我们正在开发一个Web应用程序,其中约50%的写请求最终将数据推送到多个数据存储,并在这些数据存储中插入和更新大量记录。为了提高响应时间,我们希望在后台异步处理这些请求。Resque or Gearman - 为后台作业选择正确的工具
我们的Web应用程序正在用Ruby on Rails编写。
我倾向于的两种解决方案是Resque和Gearman。
Resque:更多的信息在这里:http://github.com/blog/542-introducing-resque Resque似乎非常适合Ruby,它专门用于后台作业处理。 “后台作业可以是任何响应执行的Ruby类或模块,您现有的类可以很容易地转换为后台作业,或者可以专门创建新的类来完成工作。” Gearman:它不是专门用于异步处理的后台作业,但这是它绝对可以做到的事情。显然更强大,或者看起来如此。 Gearman的另一个优点是,虽然您的客户端代码可能位于Ruby中,但工作者代码可以位于,比方说PHP中。虽然现在我们完全是Ruby on Rails应用程序,但谁知道在将来我们是否可能想要使用PHP或其他功能取决于手头的工作。
你会推荐什么?你有两种经验吗?在选择两者之间时,我应该记住哪些现实生活中的挑战?我甚至在这里比较苹果和苹果?
我不同意封闭状态。 Q格式良好,并有足够的细节以提供正确的答案。辩论是受欢迎的,应该为解决方案提供更多的观点。 – michaelbn 2013-10-23 06:24:03