我们正在使用jRuby 1.7.20.1,puma和IIS 8+在Windows Server 2012上运行应用程序。
jRuby上的启动时间有点长,这很好,因为只要接收到请求,app就会很快运行。问题是,如果应用程序没有收到请求的时间过长,jRuby似乎就睡着了,下一个请求必须再次经历整个启动过程。
我尝试将.jrubyrc添加到应用程序的根目录,以便jRuby将活动线程池min设置为1(默认为0)。但这似乎没有做任何事情。
我们正在考虑的最后一个解决方案是添加一个脚本,它只是在一个时间间隔内发送一个小请求来阻止它,但这看起来很明显,我确信有一些方法可以配置jRuby来保持它活跃。
答案 0 :(得分:2)
这实际上是一个需要在IIS中为运行我们的应用程序的ApplicationPool更改的设置。
在AppPool>下高级设置>空闲超时
我们必须将设置从终止更改为暂停。现在工作正常。