但实际上我们做一个测试,我对一个使用8G内存的PG ,加载3000个并发连接并且查询同一个表,并且同时将 shared_buffers 调整成20MB ,然后我就等待着PG崩溃.
?
?
?...实际上我并没有如愿, PG 还是稳稳的运行, 但系统有一点缓慢,有点卡的感觉
内存方面也并没有与我预期的会彻底的用光契合.
?...这个PGPROC 会在 PROC_HDR中被调用, allProcs 是一个指针,也就是所有的PGPROC 都会在这里面.PGPROC 主要的作用是要在事务处理期间处理相关例如等待和处理等工作之间的切换的问题...由于查询是最简单的 select 语句,并且应该也应用到了缓存,IO性能基本上应处于没有使用的状态,内存也的确未占满.
?
?...,让数据库使用有限的连接去处理更多的任务,接入更多的要工作的连接就是解决,少连接和应用要多连接的之间矛盾,所谓的连接复用.
2 如果你经常发现你的连接状态在 idle in transaction 这也就说明经常有大事务长时间在等待什么