# rabbitmq **Repository Path**: Hinsss/rabbitmq ## Basic Information - **Project Name**: rabbitmq - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-02-23 - **Last Updated**: 2020-12-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # rabbitmq #### 介绍 rabbitmq控制台的端口为15672,rabbitmq服务端口为5672 关于消息持久化,如果一个队列已经声明成功是未持久化队列,并且已经存在于rabbitmq中,不能重新改代码声明不一样的队列 就是代码正确也是不允许的,rabbitmq不准重新定义(不同参数)一个已存在的队列 声明参数durable=true,即可实现持久化 ###订阅模型分类 1、1个生产者,多个消费者 2、每一个消费者都有自己的一个队列 3、生产者没有将消息直接发送到队列,而是发送到了交换机 4、每个队列都要绑定到交换机 5、生产者发送的消息,经过交换机到达队列,实现一个消息被多个消费者获取的目的 X(Exchanges):交换机一方面:接收生产者发送的消息。另一方面:知道如何处理消息,例如递交给某个特别队列、递交给所有队列、或是将消息丢弃。到底如何操作,取决于Exchange的类型。 Fanout:广播,将消息交给所有绑定到交换机的队列 Direct:定向,把消息交给符合指定routing key 的队列 Topic:通配符,把消息交给符合routing pattern(路由模式) 的队列 Exchange(交换机)只负责转发消息,不具备存储消息的能力,因此如果没有任何队列与Exchange绑定,或者没有符合路由规则的队列,那么消息会丢失!