Python 具有相同RabbitMQ代理后端进程的多个芹菜项目
如何使用两个不同的芹菜项目,它们使用来自单个RabbitMQ安装的消息 通常,如果我对这些脚本使用不同的rabbitmq,它们工作得很好。但在生产机器上,我需要为它们共享相同的RabbitMQ后端Python 具有相同RabbitMQ代理后端进程的多个芹菜项目,python,rabbitmq,celery,Python,Rabbitmq,Celery,如何使用两个不同的芹菜项目,它们使用来自单个RabbitMQ安装的消息 通常,如果我对这些脚本使用不同的rabbitmq,它们工作得很好。但在生产机器上,我需要为它们共享相同的RabbitMQ后端 注意:由于某些限制,我无法将新项目合并到现有项目中,因此它将是两个不同的项目。RabbitMQ能够创建名为虚拟消息代理的虚拟消息代理 主机或虚拟主机。每个服务器本质上都是一个具有自己队列的小型RabbitMQ服务器。这使您可以安全地将一个RabbitMQ服务器用于多个应用程序 rabbitmqctl
注意:由于某些限制,我无法将新项目合并到现有项目中,因此它将是两个不同的项目。RabbitMQ能够创建名为虚拟消息代理的虚拟消息代理 主机或虚拟主机。每个服务器本质上都是一个具有自己队列的小型RabbitMQ服务器。这使您可以安全地将一个RabbitMQ服务器用于多个应用程序
rabbitmqctl add_vhost
命令创建vhost
默认情况下,芹菜使用默认的vhost:
芹菜工人——经纪人=amqp://guest@本地主机//
但您可以使用任何自定义vhost:
芹菜工人——经纪人=amqp://guest@localhost/myvhost
示例:
rabbitmqctl add_vhost new_host
rabbitmqctl add_vhost /another_host
芹菜工人——经纪人=amqp://guest@本地主机/新主机
芹菜工人——经纪人=amqp://guest@localhost//另一个\u主机
工作得很好。在实现此方法之前,我尝试了不同的队列/交换配置,但没有成功。使用不同的VHOST,没有冲突,两个芹菜应用对我来说都很好。