最近针对项目并发测试,发现通过横向扩展服务器的方式已经无法增加系统的 TPS 了,目前购买的阿里云 ECS 为 16C32G 的配置,启动了 16 个 Passenger 进程来处理 HTTP 请求,但是通过并发压力测试时,passager 的进程只有几个在工作,大量的进程处理请求数为 0,想请教大佬们 Passenger 有没有配置能让 http 请求均匀分配到 Passenger 进程中处理的配置。
目前项目采用的是 Nginx+Passenger,相关配置如下:
之前 passenger_max_requests 写的是 2000,也是一样的现象(忘记截图了),passenger_max_requests 改成 20 后也是如下图所示,大部分 Passenger 在闲置不处理 http 请求,当我 passenger_max_requests 数字增大到 2000 时,我 http 请求会偶尔会卡,可能原因是当一个 Passenger 的第一个进程处理的 http 请求太多,会卡住:
各位大佬之前有遇到过这个情况吗?