ubuntu

RabbitMQ消息队列Ubuntu怎么用

小樊
34
2025-07-08 00:15:00
栏目: 智能运维

在Ubuntu上使用RabbitMQ消息队列,可以按照以下步骤进行安装和配置:

安装RabbitMQ

  1. 更新系统软件包列表
sudo apt update
  1. 安装RabbitMQ的依赖组件和GPG密钥
sudo apt install -y curl gnupg
curl -fsSL https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc | sudo gpg --dearmor > /usr/share/keyrings/rabbitmq-archive-keyring.gpg
  1. 添加RabbitMQ软件包存储库到系统源列表中
echo "deb [signed-by=/usr/share/keyrings/rabbitmq-archive-keyring.gpg] http://ppa.launchpad.net/rabbitmq/rabbitmq-erlang/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
echo "deb [signed-by=/usr/share/keyrings/rabbitmq-archive-keyring.gpg] https://packagecloud.io/rabbitmq/rabbitmq-server/ubuntu/ focal main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
  1. 更新包列表并安装RabbitMQ服务器
sudo apt update
sudo apt install -y rabbitmq-server
  1. 启用RabbitMQ管理插件并开放相应的防火墙端口(如果有防火墙设置)
sudo rabbitmq-plugins enable rabbitmq_management
sudo ufw allow 15672
sudo ufw allow 5672
  1. 启动RabbitMQ服务并设置为开机自启
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server

配置RabbitMQ

  1. 创建用户和设置权限(可选):
sudo rabbitmqctl add_user myuser mypassword
sudo rabbitmqctl set_user_tags myuser administrator
sudo rabbitmqctl set_permissions -p / myuser ".*" ".*" ".*"
  1. 访问RabbitMQ管理界面: 在浏览器中访问 http://localhost:15672,使用上面创建的用户名和密码登录。

使用RabbitMQ

  1. 安装RabbitMQ客户端库(以Python为例):
pip install pika
  1. 发送消息
import pika

connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()

channel.queue_declare(queue='hello')

channel.basic_publish(exchange='', routing_key='hello', body='Hello World!')
print(" [x] Sent 'Hello World!'")

connection.close()
  1. 接收消息
import pika

connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()

channel.queue_declare(queue='hello')

def callback(ch, method, properties, body):
    print(" [x] Received %r" % body)

channel.basic_consume(queue='hello', on_message_callback=callback, auto_ack=True)

print(' [*] Waiting for messages. To exit press CTRL+C')
channel.start_consuming()

以上步骤涵盖了在Ubuntu系统上安装和配置RabbitMQ的主要方法,并根据具体发行版选择合适的方式。

0
看了该问题的人还看了