RabbitMq基本笔记

RabbitMq笔记

服务命令:

systemctl start rabbitmq-server 		#启动服务
systemctl status rabbitmq-server		#查看状态
systemctl enable rabbitmq-server		#开机自启动
systemctl stop rabbitmq-server			#暂停服务

安装可视化界面:

 rabbitmq-plugins enable rabbitmq_management

开启远程登陆

cd /etc/rabbitmq/				#进入rabbitmq默认路径下,看到插件后
vim rabbitmq.config				#进入配置页面
[{rabbit,[{loopback_users,[]}]}]. #添加配置,保存退出,即可远程访问

systemctl restart rabbitmq-server #重新启动
guest   guest					#登陆的用户名,密码
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RabbitMQ是一个开源的消息代理软件,它实现了高级消息队列协议(AMQP)标准,可以在分布式应用中进行消息传递。RabbitMQ支持多种消息协议,包括AMQP、MQTT、STOMP等。下面是RabbitMQ的详细笔记: 1. RabbitMQ基本概念 RabbitMQ是一个消息代理软件,它有以下几个基本概念: - 生产者(Producer):发送消息的应用程序。 - 消费者(Consumer):接收消息的应用程序。 - 队列(Queue):存储消息的缓冲区。 - 交换机(Exchange):接收生产者发送的消息,并将消息路由到队列中。 - 绑定(Binding):定义交换机和队列之间的关系。 2. RabbitMQ的消息传递模型 RabbitMQ的消息传递模型基于AMQP协议,包括以下几个步骤: - 生产者将消息发送给交换机。 - 交换机根据消息的路由键(routing key)将消息路由到一个或多个队列。 - 消费者从队列中接收消息。 在RabbitMQ中,消息可以按照以下几种方式进行路由: - 直接路由(Direct Exchange):只有指定路由键与绑定的路由键完全匹配的消息才会被路由到对应的队列中。 - 主题路由(Topic Exchange):路由键可以使用通配符进行匹配,例如"queue.*"表示匹配以"queue."开头的任意路由键。 - 广播路由(Fanout Exchange):将消息路由到所有绑定的队列中,无需指定路由键。 3. RabbitMQ的安装和配置 RabbitMQ可以在Linux、Windows和MacOS等操作系统上安装,具体安装方法可以参考官方文档(https://www.rabbitmq.com/download.html)。 安装完成后,需要进行一些基本的配置,包括创建用户和设置权限等。可以使用RabbitMQ的控制台或者命令行工具进行配置。 4. RabbitMQ的使用 使用RabbitMQ需要编写生产者和消费者的代码,并配置交换机、队列和绑定等信息。以下是一个简单的示例: 生产者代码: ```python import pika connection = pika.BlockingConnection(pika.ConnectionParameters('localhost')) channel = connection.channel() channel.exchange_declare(exchange='test_exchange', exchange_type='direct') channel.basic_publish( exchange='test_exchange', routing_key='test_key', body='Hello, RabbitMQ!' ) print("Sent 'Hello, RabbitMQ!'") connection.close() ``` 消费者代码: ```python import pika connection = pika.BlockingConnection(pika.ConnectionParameters('localhost')) channel = connection.channel() channel.exchange_declare(exchange='test_exchange', exchange_type='direct') result = channel.queue_declare(queue='', exclusive=True) queue_name = result.method.queue channel.queue_bind( exchange='test_exchange', queue=queue_name, routing_key='test_key' ) def callback(ch, method, properties, body): print("Received %r" % body) channel.basic_consume(queue=queue_name, on_message_callback=callback, auto_ack=True) print('Waiting for messages...') channel.start_consuming() ``` 以上代码实现了一个直接路由的消息传递模型。生产者将消息发送到名为"test_exchange"的交换机中,路由键为"test_key",消费者从队列中接收消息并打印到控制台中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值