每当我的Apache服务器崩溃,出现一个错误,说MaxClients已经达到。 在我的研究中,我得到了一个印象,那就是我的内存不足(只要选中,MaxClients设置为1500,尽pipeapache进程的数量在40到100之间)
无论如何,这只是一个背景。
当我跑到top我被告知我总共有大约15GB,使用14GB,而Free现在似乎在500MB到1GB之间徘徊(尽pipe大约一个小时之前大约有3-4GB是免费的)
我也运行ps_mem.py ,而且显示只有3-4 GB被使用!
为什么区别? 哪一个是正确的?
ps_mem.py是IMO更精确的一点,因为它可以正确评估共享内存的数量。
顶级读取/proc/<PID>/statm而ps_mem.py从/proc/<PID>/smaps读取更详细的信息,并更精确地评估多进程守护进程的总使用率。
有关详细信息,我build议通过ps_mem.py代码阅读