nginx 文档说
max_clients = worker_processes * worker_connections
但是keepalive因素如何影响呢?我的配置设置有 2 个 worker_processes 和 8192 个 worker_connections;这意味着我理论上最多可以处理 16384 个并发连接。同时推出 16384 个数据流是巨大的,但如果我有一个 60 秒的 keepalive_timeout,那么每个客户端占用一个连接 1 分钟,这个数字具有完全不同的含义。它是哪一个?
连接到这一切的是可以与 log_format 指令一起使用的 $connection 变量。我定义了以下日志格式,以便分析服务器的性能:
log_format perf '$request_time $time_local $body_bytes_sent*$gzip_ratio $connection $pipe $status $request_uri';
该 $connection 变量报告了大约 11-12 百万个连接!我不是数学专业的,但显然这个数字远高于 worker_processes * worker_connections。那么它应该代表什么?
简而言之,我试图弄清楚如何确定worker_connection 的良好价值。