我正在使用带有Rails 5应用程序的Phusion Passenger Standalone 5.3.4。在一些负载测试产生了一些不太令人满意的结果后,我决定看看引擎盖下的一些进程,发现了相当多不同的与乘客相关的进程,从"Passenger Watchdog","Passenger Core","Passenger AppPreloader“都产生并停留在周围。即使在我停止负载测试之后,它们似乎仍然存在了一小段时间,不必要地消耗了服务器上的宝贵内存。
对于Passenger来说,为了少量的流量产生上面提到的几十个这样的进程是正常的吗(我只测试了20个并发用户)。如果这些进程的数量是正常的,那么即使流量离开网站,它们仍然留在网站上也是正常的吗?
对于其他上下文,我在Ubuntu16.04VM上运行所有这些,并且我还利用了Type=forking配置中的Systemd。目前我不会将任何特定的选项传递给Passenger,大多数情况下一切都只是使用默认配置。
发布于 2018-09-19 09:10:51
在进一步阅读他们的文档后,我发现有一些选项对我的应用程序的并发性有显著的改善,根据他们的Passenger Standalone的documentation调优max-pool-size和min-instances有很大的帮助。
在我的负载测试中,从nginx引擎切换到builtin引擎似乎也产生了更好的结果。
https://stackoverflow.com/questions/52351384
复制相似问题