Nginx stub_status 监控模块的功能实现

Nginx 的 stub_status 模块用于查看 Nginx 的基本状态信息。

模块实现的功能

通过这个模块,可以看到如下的 Nginx 状态信息:

Active connections: 2
server accepts handled requests
 62 62 102
Reading: 0 Writing: 1 Waiting: 0

其中:

  1. Active connections:活跃的连接数
  2. accepts:已允许的请求数
  3. handled:已处理完毕的请求数
  4. requests:总请求数
  5. Reading:读取到客户端的 Header 信息数
  6. Writing:返回给客户端的 Header 信息数
  7. Waiting:开启 keep-alive 的情况下,这个值等于 (Active 减 Reading 减 Writing),表示 Nginx 已经响应结束的那些请求中,正在等候下一次请求指令的驻留连接

在访问频率高、请求较快处理完毕时,Waiting 较大是正常的;若 Reading + Writing 较大,则说明并发访问数较大。

安装模块

这个模块 Nginx 源码已包含在内,但默认不会编译进来,需要启用这条编译参数:

--with-http_stub_status_module

启用模块

要启用这个模块,只需要在站点配置写入一行:

stub_status  on;

以我的配置为例:

location = /status/ {
  stub_status  on;
}

相关推荐