怎样监测Apache服务器负载和统计信息

春节过来事情有点多,所以一直没有更新,在这儿说声抱歉了~

本文为翻译文章,原文地址为http://www.tecmint.com/how-to-monitor-apache-web-server-load-and-page-statistics.htm,有删改。

本文旨在介绍使用mod_status监测和处理Apache服务器负载的方法,它可以使得系统管理员更加简便地获取到这些信息。

mod_status是什么?

mod_status是一个Apache模块,它能够帮助监测Apache服务器的负载与当前的HTTP连接状况,并能够提供HTML界面供使用者获取这些数据。

Apache的mod_status模块生成的纯HTML界面包括了下面这些当前服务器状态的信息:
对服务器的请求总数;
服务器的CPU使用率;
服务器负载;
服务器在线时长;
总流量;
独立访问者的进程PID;
等等。

Apache Project的官网对公众提供了他们的mod_status数据访问界面,您可以到http://www.apache.org/server-status进行查看。

怎样开启mod_status模块?

我们用文本编辑器比如vi打开apache配置文件,假设为/etc/httpd.conf

在任意位置添加如下的行:

1
2
3
4
5
6
7
8
LoadModule status_module modules/mod_status.so
<Location /server-status>
SetHandler server-status
Order allow,deny
Deny from all
Allow from all
</Location>
ExtendedStatus On

然后重启apache服务器

获取mod_status状态页面

我们可以通过在服务器的访问地址后加上/server-status来获取mod_status监控生成的服务器状态页面,比如在浏览器中输入http://5.175.142.66/server-status这样就可以了。

你可以看到如下图的示例页面:
mod_status
生成的页面包含了所有有关服务器在线时长、PID、各独立访问者及其试图访问的页面等等信息。我们还可以通过在server-status后加上?refresh=xx来让这个页面自动刷新,将xx改成你需要的秒数即可。比如,http://5.175.142.66/server-status?refresh=5即可每五秒刷新显示服务器的状态。

在命令界面获得mod_status状态信息

上述信息除了可以在浏览器中获取,还可以直接在终端/SSH中获取。为此,我们需要使用命令界面下的浏览器lynx或links。执行:

1
yum install lynx

这样就安装好了命令界面的浏览器,执行:

1
lynx http://5.175.142.66/server-status

就可以直接在终端里看到当前的服务器各项状态。

更多关于mod_status的信息可以查看Apache官方wiki,链接为http://httpd.apache.org/docs/2.0/mod/mod_status.html

本文欢迎转载,转载请注明转自香菇肥牛博客http://qing.su

14 Responses

  1. 无纯洁说道:

    学习了~

  2. 小新说道:

    学习下哈 用虚拟主机的就省心多了。。

  3. Youth.霖说道:

    同为虚拟主机路过

  4. 刘俊博客说道:

    最喜欢吃香菇肥牛了~

  5. Mars丶Ge说道:

    你得补上如何编译这个模块吧~~[嘻嘻]

    • 香菇肥牛说道:

      安装Apache的时候默认编译好了,直接启用就可以咯~~

  6. tiandi说道:

    前阵子正好刚用到这个status.

  7. 逗妇乳说道:

    还是用虚拟主机省心啊

  8. Mars丶Ge说道:

    还是没更新~[失望]

    • 香菇肥牛说道:

      哎,学校里面事情太多,现在难得有时间上网,基本只能保证一周一更。。。[泪]

  9. 阿里百秀说道:

    文章不错,学些了!

  10. vps精选网说道:

    做压力测试的时候,用这个工具分析服务器连接状态还是不错的

发表评论

电子邮件地址不会被公开。 必填项已用*标注