Django-celery任务由错误的运行实例提供服务

时间:2012-02-22 16:46:21

标签: django rabbitmq django-celery

我有一个Django应用程序,它使用带有rabbitmq后端的django-celery。我们有一台测试机器,不同的用户在他们自己的帐户中运行相同的Django应用程序(每个都在不同的端口上监听),但是所有人都使用相同的settings.py文件,因此使用相同的rabbitmq凭据将芹菜连接到后面-结束。 (请注意,它们每个都为db后端使用不同的sqlite数据库。)

我刚刚发现我们可能在django-celery任务中遇到“串扰”,来自用户A帐户中django应用程序的任务请求可能正由用户B帐户中运行的芹菜任务提供服务。

配置事物以避免此问题的最简单方法是什么?我是否需要为每个用户创建单独的rabbitmq帐户和/或虚拟主机?或者还有其他方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:3)

最简单的方法是为每个环境分别使用vhost。您仍然可以共享相同的RabbitMQ用户。