nginx查看连接数

1.主要方法:

–通过access.log进行访问:连接数

–通过status进行查看:

nginx status详解
active connections – 活跃的连接数量
server accepts handled requests — 总共处理了11989个连接 , 成功创建11989次握手, 总共处理了11991个请求
reading — 读取客户端的连接数.
writing — 响应数据到客户端的数量
waiting — 开启 keep-alive 的情况下,这个值等于 active – (reading+writing), 意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接.

–通过zabbix进行监控;

2.日志研究:

(1)https://www.zifangsky.cn/1019.html

--放于stream之内:
    log_format proxy '$remote_addr [$time_local] '
                 '$protocol $status $bytes_sent $bytes_received '
                 '$session_time "$upstream_addr" '
                 '"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"';
    access_log logs/access_1234.log proxy ;
    error_log  logs/error_1234.log;
    open_log_file_cache off;
--关于open_log_file_cache:开启日志打开缓存,其他日志介绍,详见http://www.ttlsa.com/linux/the-nginx-log-configuration/
为了提高包含变量的日志文件存放路径的性能,可以使用open_log_file_cache指令来设置,格式如下:
    open_log_file_cache max=N [inactive=time][min_use=N][valid=time] |off
该指令默认是禁止的,等同于: open_log_file_cache off;
max:设置缓存中的最大文件描述数量。
inactive:设置一个时间,如果在设置的时间内没有使用此文件描述,则自动删除此描述。
min_uses:在参数inactive指定的时间范围内,如果日志文件超过使用次数,则该日志文件的描述计入缓存,默认为10秒钟
valid:设置多长时间检查一次,看日志文件路径与文件名是否仍然存在,默认60秒。
示例:open_log_file_cache max=1000 inactive=20s min_uses=2 valid=1m
--关于TCP_NODELAY,启用就意味着禁用了Nagle算法,允许小包的发送;具体原因详见:https://blog.csdn.net/lclwjl/article/details/80154565
对于关闭TCP_NODELAY,则是应用了Nagle算法。数据只有在写缓存中累积到一定量之后,才会被发送出去,这样明显提高了网络利用率(实际传输数据payload与协议头的比例大大提高)。但是这由不可避免地增加了延时;与TCP delayed ack这个特性结合,这个问题会更加显著,延时基本在40ms左右。当然这个问题只有在连续进行两次写操作的时候,才会暴露出来。

发表评论

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

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据