这些字段究竟意味着什么?
比如 count?是开启 n 个进程?是不是意味着最大能承载同一时间能够接受 n 个客户端的请求?
比如说 stop_timeout?是意味着客户端连接上来,处理时间超过 n 秒后,就会断开连接?
有没有一份完整的说明,和最佳实践配置说明。谢谢各位老哥看到这里。
return [
'listen' => 'http://0.0.0.0:8787',
'transport' => 'tcp',
'context' => [],
'name' => 'webman',
'count' =>100,
'user' => '',
'group' => '',
'reusePort' => false,
'event_loop' => '',
'stop_timeout' => 2,
'pid_file' => runtime_path() . '/webman.pid',
'status_file' => runtime_path() . '/webman.status',
'stdout_file' => runtime_path() . '/logs/stdout.log',
'log_file' => runtime_path() . '/logs/workerman.log',
'max_package_size' => 10 * 1024 * 1024
];
各个参数含义workerman手册有 https://www.workerman.net/doc/workerman/worker.html
stop_timeout 是执行stop时进程如果还在处理业务就等待,如果等待时间超过stop_timeout设置的时间,则执行强制杀死进程。
workerman里就两种进程,主进程和子进程,主进程不做业务处理,只负责创建和监控子进程。创建多少子进程由count来控制,子进程不会再创建子进程。
一个子进程可以维持多个连接,请求是顺序排队处理的(如果没用协程或异步的话)。多个子进程可以看作是并发处理。
谢谢解释,和指路,清楚了~