RabbitMQ基础知识
问题描述中提到的“RabbitMQ基础知识”通常指的是消息队列中间件的一种,它主要用于解决应用程序之间的通信问题。RabbitMQ是使用Erlang语言编写的,并且是开源的,可以支持多种消息传递模式,如:生产者消费者模式、发布订阅模式等。
解决方案:
安装RabbitMQ
在安装RabbitMQ之前,需要先安装Erlang,因为RabbitMQ是用Erlang语言编写的。
# Ubuntu/Debian系统 sudo apt-get install erlang sudo apt-get install rabbitmq-server # CentOS系统 sudo yum install erlang sudo yum install rabbitmq-server
开启RabbitMQ管理界面
RabbitMQ提供了一个管理界面,可以通过以下命令启动:
sudo rabbitmq-plugins enable rabbitmq_management
然后,你可以通过浏览器访问 http://localhost:15672 来进入管理界面,默认的用户名和密码都是guest。
使用Python操作RabbitMQ
安装Python的RabbitMQ客户端:
pip install pika
以下是一个简单的生产者消费者模型的例子:
# 生产者 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() # 消费者 import pika connection = pika.BlockingConnection(pika.ConnectionParameters('localhost')) channel = connection.channel() channel.queue_declare(queue='hello') def callback(ch, method, properties, body): print(f" [x] Received {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()
以上代码实现了一个简单的RabbitMQ的生产者和消费者模型,生产者发送消息到名为"hello"的队列,消费者从该队列中消费消息。
评论已关闭