我正在优化我的 VPS,不幸的是,我必须在 Passenger 下运行 ROR。我已将其设置为在 1 分钟空闲时间后关闭所有应用程序实例,但以下部分仍然会消耗大量内存,它们会一直运行:
23716 www-data 20 0 75300 60m 2384 S 0 15.2 0:03.15 ruby1.8
23712 root 20 0 30584 19m 2424 S 0 4.8 0:01.20 ruby1.8
23675 root 20 0 15872 6340 1572 S 0 1.6 0:00.47 ruby1.8
23678 nobody 20 0 10476 3036 2484 S 0 0.7 0:00.00 PassengerLoggin
23673 root 20 0 14172 1964 1728 S 0 0.5 0:00.02 PassengerHelper
23670 root 20 0 5328 1604 1420 S 0 0.4 0:00.00 PassengerWatchd
有什么建议我可以用它们做什么吗?ROR 很少使用,但由于这些空闲进程,它占用了大约 25% 的 VPS RAM :-(
附言:我已经切换到 ruby 企业版以尝试减少内存消耗....
答案1
PassengerPoolIdleTime 300
RailsFrameworkSpawnerIdleTime 1800
RailsAppSpawnerIdleTime 600
默认情况下,Passenger 使用上述值。您可以将这些行添加到 Apache conf 的 Passenger 部分,然后尝试调整这些值。