【发布时间】:2020-11-17 21:52:45
【问题描述】:
Postgresql 12.2 在一段时间内占用了大量的常驻内存。
pidstat -l -r -p ALL | grep -i [p]ostgres | gawk '{ sum += $7 }; END { print sum }'
命令在 5 天后给我 2GB,最初是 350 MB。无论如何要减少它或不允许它占用太多内存。
【问题讨论】:
标签: database postgresql centos psql
Postgresql 12.2 在一段时间内占用了大量的常驻内存。
pidstat -l -r -p ALL | grep -i [p]ostgres | gawk '{ sum += $7 }; END { print sum }'
命令在 5 天后给我 2GB,最初是 350 MB。无论如何要减少它或不允许它占用太多内存。
【问题讨论】:
标签: database postgresql centos psql
RSS 包括每个进程曾经独立访问过的所有共享内存。所以总结起来就是一遍又一遍地计算相同的内存。由于您报告的总和毫无意义,因此试图减少它是没有意义的。如果您认为自己有内存问题,那么查看任何进程的最大 RSS 可能是诊断它的更好方法。但如果没有理由认为存在内存问题,请不要试图发明一个。
【讨论】:
ps aux | grep postgres 时,有很多进程处于空闲状态。可能是什么原因?除此之外,无论如何都可以限制或排除随着时间累积的冗余进程。