nginx文档说
max_clients = worker_processes * worker_connections
Run Code Online (Sandbox Code Playgroud)
但是如何将keepalive因素纳入其中呢?我的配置设置有2个worker_processes和8192个worker_connections; 这意味着我理论上可以处理最多16384个并发连接.同时推出16384个数据流是巨大的,但如果我有60s keepalive_timeout然后每个客户端占用1分钟的连接,那么这个数字具有完全不同的含义.这是什么?
连接到所有这些是$ connection变量,可以与log_format指令一起使用.我定义了以下日志格式,以便分析服务器的性能:
log_format perf '$request_time $time_local $body_bytes_sent*$gzip_ratio $connection $pipe $status $request_uri';
Run Code Online (Sandbox Code Playgroud)
那个$ connection变量报告了大约11-12百万个连接!我不是数学专业,但显然这个数字高于worker_processes*worker_connections.那应该代表什么呢?
简而言之,我正在试图弄清楚如何为worker_connection确定一个好的值.
$ connection是一个计数器,而不是现在使用的连接总数.所以它的目标是成长.
Keepalive连接不能被丢弃,因此房间是worker_processes*worker_connections - keepalive连接
| 归档时间: |
|
| 查看次数: |
10426 次 |
| 最近记录: |