人们在他们的 Rails 应用程序中使用了哪些消息队列,以及决定选择它的驱动力是什么。最新的 Twitter 对其内部队列 Starling 倒下的宣传是否会影响任何现有的设计决策。
我正在开发一个需要消息队列来处理一些后台任务的应用程序,我没有做太多这方面的工作,而且我过去看到的大部分内容都是关于 Starling 和 Workling,老实说应用程序不是很大,这个解决方案可能就足够了,但我很想获得集成最佳解决方案的经验,因为我确信我会在某个时候将一个集成到更大的应用程序中。
你会为 Rails 应用推荐什么消息队列???
编辑:感谢您的建议,这个周末我将看看其中的一些。
再次编辑:我环顾四周,有点不知所措。但是,我将着手将 RabbitMQ 与 Workling 集成到我正在构建的应用程序中,然后如果我需要一些关于快速队列的知识,那么我将拥有它并知道它是否符合我的需求。
编辑:找到越来越适合我的 DJ,如果我在某个网站上“长大”,我会说 Resque 是我要去的地方。
编辑:(2014 年 12 月)所以自从我问这个问题已经有很长时间了,但我看到它仍然得到一些意见或投票,所以我想我现在在选择背景工作人员时会更新我的方法.
在我看来,目前在 Ruby 中运行后台作业的最佳方式是使用 Sidekiq。很多人真的称赞 Sidekiq 是线程化的工作线程,而不是每个工作线程的进程,它使用的内存比我在 Sidekiq 之前使用的 Resque 之类的内存要少得多。这很好,但对我来说这不是杀手级功能。通过将 Sidetiq 与 Sidekiq 一起使用,作业调度变得如此简单,以至于我切换并且从未回头看它,这是迄今为止我使用过的最简单的作业调度,并使 Sidekiq 使用起来轻而易举。