Ruby on rails 防止带有Puma/IIS的jRuby on Rails应用程序在设定的时间后入睡
我们正在Windows Server 2012上运行一个应用程序,使用jRuby 1.7.20.1、puma和IIS 8+ jRuby上的启动时间有点长,这很好,因为应用程序在这之后运行得非常快,只要它正在接收请求。问题是,如果应用程序没有收到请求的时间延长了,jRuby似乎睡着了,下一个请求必须再次经历整个启动过程 我已尝试将.jrubyrc添加到应用程序的根目录中,以便jRuby在活动线程池最小值设置为1(默认值为0)的情况下使用。但这似乎没有任何作用Ruby on rails 防止带有Puma/IIS的jRuby on Rails应用程序在设定的时间后入睡,ruby-on-rails,iis,jruby,puma,jrubyonrails,Ruby On Rails,Iis,Jruby,Puma,Jrubyonrails,我们正在Windows Server 2012上运行一个应用程序,使用jRuby 1.7.20.1、puma和IIS 8+ jRuby上的启动时间有点长,这很好,因为应用程序在这之后运行得非常快,只要它正在接收请求。问题是,如果应用程序没有收到请求的时间延长了,jRuby似乎睡着了,下一个请求必须再次经历整个启动过程 我已尝试将.jrubyrc添加到应用程序的根目录中,以便jRuby在活动线程池最小值设置为1(默认值为0)的情况下使用。但这似乎没有任何作用 我们正在考虑的最后一个解决方案是添加一
我们正在考虑的最后一个解决方案是添加一个脚本,它只是在一段时间间隔内发送一个小请求来防止它,但显然这看起来很简奇,我确信有某种方法可以配置jRuby使其保持活动状态。事实证明,对于运行我们应用程序的应用程序池,这是一个需要在IIS中更改的设置 在AppPool>高级设置>空闲超时下
我们必须将设置从terminate更改为suspend。现在它工作正常。已解决,如果其他人有问题,请参阅下文。