Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何测量每个活动Apache连接的内存使用率?_Apache_Memory Management - Fatal编程技术网

如何测量每个活动Apache连接的内存使用率?

如何测量每个活动Apache连接的内存使用率?,apache,memory-management,Apache,Memory Management,我想测量Ubuntu下一个活动Apache连接(=线程)的内存消耗 是否有能够做到这一点的监控工具? 如果没有,有人知道Apache连接大致需要多少内存吗?我不确定是否有任何工具可以实现这一点。但你可以自己估计。启动apache并检查它在没有任何会话的情况下使用了多少内存。然后创建大量会话并再次检查它使用了多少内存 您可以使用创建不同的工作负载。激活该模块,您将在/server status页上看到一个报告,在/server status?q=auto上有一个更可解析的版本。如果在上启用扩展状态

我想测量Ubuntu下一个活动Apache连接(=线程)的内存消耗

是否有能够做到这一点的监控工具?
如果没有,有人知道Apache连接大致需要多少内存吗?

我不确定是否有任何工具可以实现这一点。但你可以自己估计。启动apache并检查它在没有任何会话的情况下使用了多少内存。然后创建大量会话并再次检查它使用了多少内存

您可以使用创建不同的工作负载。

激活该模块,您将在/server status页上看到一个报告,在
/server status?q=auto
上有一个更可解析的版本。如果在上启用扩展状态,您将获得大量有关进程和线程的信息

这是监控工具用来跟踪许多统计参数的页面,因此您肯定会找到所需的(编辑:如果不是内存…)。注意此文件的安全/访问设置,它是检查服务器如何响应DOS的好工具:-)

关于内存,您必须注意,Apache喜欢内存,每个进程的内存大小取决于很多因素(加载的模块数量-检查您是否需要所有模块,虚拟主机的数量,等等)。但是在一个稳定的配置上,它不会移动很多(除非您使用的PHP脚本内存使用率很高…)。如果发现内存泄漏,请尝试限制每个进程的请求数MaxRequests(apache将杀死他并放置一个新的请求)


编辑:事实上,服务器状态下没有太多内存信息。关于监视工具,任何使用SNMP MIB-II的工具都可以跟踪每个进程的内存使用情况,如果您有snmpd守护进程,则可以使用不同子进程(Cacti、Nagios、Munin等)的平均/最高/最低值。看看这个。它不是对每个apache子级的跟踪,但它会让您了解使用这些工具可以跟踪什么。如果您不需要像Nagios或Centreon这样的完整监控系统,它具有警报、用户管理、大型网络(如果您没有很多时间阅读书籍),那么Munin、IMHO是一个非常快速获取监控报告的工具

谢谢你的回答。我尝试了你的建议,但我得到的一切都是:总访问量、总KB、CPU负载、正常运行时间、ReqPerSec、BytesPerSec、BytesPerReq、忙碌的工作人员、空闲的工作人员和记分板我在哪里可以读取每个请求的内存消耗?我遗漏了什么吗?是的,只是检查了我的监控工具,实际上,没有内存信息,我们通过SNMP跟踪它。但至少您有一个详细的cpu信息:-)。对不起。但正如我所说的,当你对所使用的内存有了一个概念(例如通过top命令),它不会移动很多。