我在Windows上运行Postgres,我正在尝试研究这种奇怪的行为:有17个postgres进程,其中8个进程消耗了~300K内存。
答案 0 :(得分:1)
这17个中有8个消耗~300K内存 每个
你有110%的确定吗? Windows不知道共享缓冲区使用了多少内存。每个进程只需使用几个kb,并将共享内存与其他进程一起使用。
你有什么问题?使用内存不是问题,使用内存。如果每个进程真的使用300KB,那么每个300KB,只有几MB,
不要忘记,PostgreSQL是一个多进程系统。这也是它在多核和多处理器系统上如此容易扩展的原因。
答案 1 :(得分:0)
请参阅pgAdmin:http://www.pgadmin.org/
答案 2 :(得分:0)
可以在http://pgfouine.projects.postgresql.org/找到用于分析postgresql中输出的工具
pgFouine是一个PostgreSQL日志分析器,用于从PostgreSQL日志文件生成详细报告。 pgFouine可以帮助您确定应该优化哪些查询以加速基于PostgreSQL的应用程序。
我认为你不能找出为什么你有很多进程在运行,但如果你觉得它可能是因为数据库的使用,这个工具可能会帮助你找到原因。