30

我正在使用 Celery 2.4.6 和 django-celery 2.4.2。

当我根据这个问题的解决方案配置 Celery 以使用 Amazon SQS 时:Celery with Amazon SQS

我在 Django 管理员的 celerycam 表中看不到任何内容。如果我切换回 RabbitMQ,任务会再次出现。

我在 SQS 中有很多(现在 40 多个)队列,名称如下:“celeryev-92e068c4-9390-4c97-bc1d-13fd6e309e19”,看起来它们可能是相关的(一些较旧的甚至有一个事件在其中),但是数据库中没有显示任何内容,并且我在 celerycam 日志中没有看到任何错误。

任何关于问题可能是什么或如何进一步调试的建议将不胜感激。

4

1 回答 1

3

SQS 是 AMQP 总线的有限实现。据我了解,它不像 rabbit-MQ 那样支持 PUB/SUB 广播,这是事件正常工作所必需的。SNS 是用来支持广播的,但它是一个单独的系统。

一些库/包使用 SimpleDB 作为消息模型存储,作为 SQS 之上的 hack 以模拟正确的 AMQP 行为,但显然 celery 还没有完整的 hack。

于 2012-02-25T16:07:26.560 回答