几乎同步的工作也是如此;基本上,我想将Web应用程序背后的数据访问和处理委托给大多数作业的任务队列。什么是我认为芹菜任务合理的最快延迟?
我想为了清楚起见,我应该解释一下吞吐量 - 虽然很好 - 对我来说不是一个必要的问题;我不需要在那个方向上缩放一段时间,但是。延迟是我目前要评估的唯一标准。我满足于使用task.apply
,如果这是唯一可行的方式,但我想将这项工作付诸实施。
答案 0 :(得分:6)
当我说throughput
时,我指的是从发送任务到执行任务的平均延迟。 roundtrip
表示发送任务,执行任务,发回结果并检索结果所需的平均时间。
正如我在评论中所说,我目前没有任何官方数据可供分享,但有 正确的配置Celery与许多其他解决方案相比具有低延迟,但它仍然比在本地执行功能带来更多的开销。在设计任务的粒度时需要考虑这一点[1]
我目前正在编写可能感兴趣的性能指南: http://ask.github.com/celery/userguide/optimizing.html
欢迎反馈,并希望了解您感兴趣的任何其他表现因素。
[1] http://celeryq.org/docs/userguide/tasks.html#granularity