使用 RabbitMQ — Python 文档
使用 RabbitMQ
安装和配置
RabbitMQ 是默认代理,因此除了您要使用的代理实例的 URL 位置之外,它不需要任何额外的依赖项或初始配置:
有关代理 URL 的描述以及 Celery 可用的各种代理配置选项的完整列表,请参阅 代理设置 ,请参阅下文以设置用户名、密码和虚拟主机。
安装RabbitMQ服务器
请参阅 RabbitMQ 网站上的 安装 RabbitMQ。 对于 macOS,请参阅 在 macOS 上安装 RabbitMQ 。
笔记
如果您在安装和使用 rabbitmqctl 后遇到 nodedown 错误,那么这篇博文可以帮助您确定问题的根源:
设置RabbitMQ
要使用 Celery,我们需要创建一个 RabbitMQ 用户,一个虚拟主机并允许该用户访问该虚拟主机:
将上述 myuser
、mypassword
和 myvhost
替换为适当的值。
有关 访问控制 的更多信息,请参阅 RabbitMQ 管理指南 。
在 macOS 上安装 RabbitMQ
在 macOS 上安装 RabbitMQ 的最简单方法是使用 Homebrew 新的闪亮的 macOS 包管理系统。
首先,使用 Homebrew 文档 提供的单行命令安装 Homebrew:
最后,我们可以使用 brew 安装 RabbitMQ:
使用 brew 安装 RabbitMQ 后,您需要将以下内容添加到您的路径中,以便能够启动和停止代理:将其添加到您的 shell 的启动文件中(例如,.bash_profile
或 .profile
)。
配置系统主机名
如果您使用的 DHCP 服务器为您提供随机主机名,则需要永久配置主机名。 这是因为 RabbitMQ 使用主机名与节点通信。
使用 scutil 命令永久设置您的主机名:
然后将该主机名添加到 /etc/hosts
以便可以将其解析回 IP 地址:
如果您启动 rabbitmq-server,您的兔子节点现在应该是 rabbit@myhost,如 rabbitmqctl 所验证:
如果您的 DHCP 服务器为您提供一个以 IP 地址开头的主机名,这一点尤其重要(例如,23.10.112.31.comcast.net)。 在这种情况下,RabbitMQ 将尝试使用 rabbit@23:非法主机名。
启动/停止 RabbitMQ 服务器
启动服务器:
您还可以通过添加 -detached
选项在后台运行它(注意:只有一个破折号):
永远不要使用 kill (kill(1)) 来停止 RabbitMQ 服务器,而是使用 rabbitmqctl 命令:
当服务器运行时,可以继续阅读【X53X】设置RabbitMQ【X76X】。