【发布时间】:2017-02-10 08:26:51
【问题描述】:
许多流行的任务队列(如 Google GAE TaskQueue、Celery)都有 ETA/Countdown 功能,允许在 xxx 秒后将任务放入队列。
我正在处理一个需要具有 ETA 功能的任务队列的项目。但是,我必须使用 Google Pubsub 消息传递系统有一些限制。 Pubsub 没有 ETA 功能。我想知道如何为任务队列实现可靠且可扩展的 ETA 机制。欢迎使用一般架构理念和实际代码示例。
我们的系统每秒排队 600-2000 个任务,其中大约 10% 需要 ETA。它是一个分布式系统,对性能至关重要。
我试图追踪 celery 的来源code,但找不到处理 ETA 的实际逻辑。如果有人能指出我处理 ETA 的 Celery 文件/代码,那也很好。
【问题讨论】:
标签: celery message-queue messaging task-queue google-cloud-pubsub