在Heroku上多线程Ruby工作进程

5
我有一个部署在Heroku上的Ruby应用程序,需要使用worker线程进行后台处理。我还没有决定使用Delayed Job还是Resque,但这个问题的答案可能会影响我的决定。后台作业将大多数时间等待外部API(如Facebook、Twitter等),因此它们对CPU的利用率很低。
是否有办法在每个Heroku worker dyno上获取多个线程?这是标准做法还是DJResque插件可用的功能?还是可以通过Foreman配置预分叉等方式实现?否则,我将在95%的时间里浪费很多钱在worker dynos上,而这些dynos将无所事事地等待外部API响应。
1个回答

5
你可以尝试使用sidekiq,它与resque类似,但使用线程同时处理任务。你也可以同时使用resque和sidekiq。

我一直在Unicorn的工作进程中使用Resque,但是为了使用更少的内存,我正在尝试使用Sidekiq替代--您如何在Resque与Sidekiq一起使用? - joelvh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接