2009-02-24 44 views
6

我使用Apache + Passenger来托管一些Rails应用程序。当没有更长时间的请求时,某些东西似乎进入睡眠模式。然后需要10-20秒才能加载该站点。感觉就像在没有更长时间的要求时必须醒来。我的乘客电动Rails应用程序有时需要很长时间才能加载

我该如何解决这个问题?我有足够的内存,所以如果进入睡眠只是保持清醒状态,那应该没有问题。 ;)

回答

10

查看Passenger的PassengerPoolIdleTime参数。 它指出应用程序实例在关闭以保存内存之前可以闲置的最大秒数。

默认值是300,但您可以尝试设置更高的数字并查看是否有帮助。

1

此外,如果您在共享主机上并且无法更改该设置,则可以随时编写一个cron脚本以每x秒点击一次(其中x稍小于PassengerPoolIdleTime),然后更新您的分析包忽略来自正在进行轮询的框的IP地址的请求。

1

乘客文档建议将PassengerPoolIdleTime设置为仅运行少数Rails应用程序的非共享主机上的0。这应该防止卸载,除非它是绝对必要的。

相关问题