windows下apache性能监控

一.apache配置文件

常用的配置文件有:

1.XXX/httpd2.X/conf/httpd.conf。该文件是apache的主要配置文件。其中主要说明:监听的端口,监听的地址,默认开启的进程方式(prefork.c和work.c)

2.XXX/httpd2.X/conf/extra/httpd-default.conf。 该文件是apache在主要配置基础上更详细的规定了超时时间,连接保持等等

3.XXX/httpd2.X/conf/extra/httpd-mpm.conf。 该文件是apache在主要配置基础上,如果开启MPM模式的话。那么进程的开启是否就需要使用这里面方式。

 注:extra目录中的文件,基本都是需要在httpd.conf中开启,才能生效,如:httpd.conf文件中  #Include conf/extra/httpd-mpm.conf 。将前面的#去掉,就是开启该功能。

 二.apache性能监控

要监控apache的性能,我们需要修改配置文件,允许查看apache运行状态的主机。

1)加载mod_status.so 

对Apache的状态管理的模块是LoadModule status_module modules/mod_status.so ,所以需要...apache2\conf'\httpd.conf配置文件中修改。

找到LoadModule status_module modules/mod_status.so ,去掉其前面的# 号(默认是没有# 号的)

2)下面有修改配置文件有两种方式

方式一: 在httpd.conf文件底部分添加以下内容:

<location /c-server-status>
         SetHandler server-status
         Order Deny,Allow
         Deny from nothing
         Allow from all
</location>

ExtendedStatus On
方法二:在httpd.conf中找到以下内存
# Real-time info on requests and configuration
#Include conf/extra/httpd-info.conf   //去掉这一行前面的#号

打开...apache2\conf\extra\http-info.conf 配置文件进行修改。修改内容与方式一相同。

其实,两种无方法是相同的,只是第二种方法更为优雅一点。

修改信息解释:

<location /c-server-status>  : c-server-status 这个名字可以任意的取,但最好不要被别人猜到。

Deny from   表示禁止的访问地址;nothing 表示没有禁止访问的地址 。
Allow from   表示允许的地址访问;all 表示所有的地址都可以访问。

ExtendedStatus On   表示的是待会访问的时候能看到详细的请求信息,另外该设置仅能用于全局设置,不能在特定的虚拟主机中打开或关闭。启用扩展状态信息将会导致服务器运行效率降低。

4)访问

http://你的IP地址:端口/c-server-status 

http://你的IP地址:端口/c-server-status ?refresh=N 

N将表示访问状态页面可以每N秒自动刷新一次

Apache Server Status for localhost
Server Version: Apache/2.2.19 (Win64)
Server Built: May 28 2011 15:18:56

Current Time: Sunday, 11-Nov-2012 17:44:21 Öйú±ê׼ʱ¼ä
Restart Time: Sunday, 11-Nov-2012 17:36:28 Öйú±ê׼ʱ¼ä
Parent Server Generation: 1
Server uptime: 7 minutes 52 seconds
Total accesses: 0 - Total Traffic: 0 kB
0 requests/sec - 0 B/second -
1 requests currently being processed, 63 idle workers
______________________________________________________________W_
................................................................

Scoreboard Key:"_" Waiting for Connection, "S" Starting up, "R" Reading Request,"W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,"C" Closing connection, "L" Logging, "G" Gracefully finishing,"I" Idle cleanup of worker, "." Open slot with no current process
Srv    PID    Acc    M    SS    Req    Conn    Child    Slot    Client    VHost    Request
0-1    4140    0/0/0    W    0    287636364    0.0    0.00    0.00    127.0.0.1    192.168.0.100    GET /c-server-status HTTP/1.1

Srv    Child Server number - generation
PID    OS process ID
Acc    Number of accesses this connection / this child / this slot
M    Mode of operation
SS    Seconds since beginning of most recent request
Req    Milliseconds required to process most recent request
Conn    Kilobytes transferred this connection
Child    Megabytes transferred this child
Slot    Total megabytes transferred this slot

参数分析:

参数分析:
字段                         说明
Server Version       Apache 服务器的版本。
Server Built         Apache 服务器编译安装的时间。
Current Time        目前的系统时间。
Restart Time         Apache 重新启动的时间。
Parent Server Generation        Apache 父程序 (parent process) 的世代编号,就是 httpd 接收到 SIGHUP 而重新启动的次数。
Server uptime         Apache 启动后到现在经过的时间。
Total accesses         到目前为此 Apache 接收的联机数量及传输的数据量。
CPU Usage           目前 CPU 的使用情形。
_SWSS....            所有 Apache process 目前的状态。每一个字符表示一个程序,最多可以显示 256 个程序的状态。
Scoreboard Key         上述状态的说明。以下为每一个字符符号所表示的意义:
    * _:等待连结中。
    * S:启动中。
    * R:正在读取要求。
    * W:正在送出回应。
    * K:处于保持联机的状态。
    * D:正在查找DNS。
    * C:正在关闭连结。
    * L:正在写入记录文件。
    * G:进入正常结束程序中。
    * I:处理闲置。
    * .:尚无此程序。
Srv        本程序与其父程序的世代编号。
PID        本程序的process id。
Acc        分别表示本次联机、本程序所处理的存取次数。
M         该程序目前的状态。
CPU        该程序所耗用的CPU资源。
SS         距离上次处理要求的时间。
Req        最后一次处理要求所耗费的时间,以千分之一秒为单位。
Conn       本次联机所传送的数据量。
Child       由该子程序所传送的数据量。
Slot        由该 Slot 所传送的数据量。
Client       客户端的地址。
VHost       属于哪一个虚拟主机或本主机的IP。
Request     联机所提出的要求信息。

发布了133 篇原创文章 · 获赞 478 · 访问量 34万+

猜你喜欢

转载自blog.csdn.net/fuhanghang/article/details/104405301