RabbitMq学习
BitchCat
好好学习,天天向上!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
RabbitMq学习(6) 灵活动态的Topic(主题)动态路由模型
一、动态路由模型topic模型中, 路由名由 . 和被其隔开的 路由名称 所组成 例如aaa.bbb.ccc, 在动态路由模式下, 通过通配符来动态的指定路由。其包含两种通配符* 和 #*表示匹配一个单词#表示匹配一个或多个由.隔开的单词* 和 # 可以在任意位置其匹配示例如下图二、代码实现①生产者:绑定通道和交换机, 声明交换机的名称和类型(不存在时创建)。通过通道,指定消息发布的交换机, 消息的路由规则,其他的配置参数以及消息本体。public class Provider原创 2020-06-22 21:05:30 · 1090 阅读 · 0 评论 -
RabbitMq学习(5) 指定RouteKey的Direct模型
一、Direct模型Direct模型又称订阅/路由发布模型,根据不同的路由规则,不同的消费者通过通道绑定一个到多个路由临时队列,而这些路由队列会监听从交换机发送过来的,指定路由的消息。实现通过路由使区别的广播给不同的消费者。如下图所示,通过不同的路由设置,消费者1,2,3都会消费来着route_1的消息,消费者2,3会收到来着route_2的消息,消费者3会收到来着route_3的消息代码实现关键1. 生产者 //绑定交换机以及申明交换机类型channel.exchangeDeclare("l原创 2020-06-17 14:50:34 · 1491 阅读 · 0 评论 -
RabbitMq学习(4) Fanout广播模型
一、Fanout模型的定义与创建过程fanout既可以称为广播模型,又可以称为发布/订阅模型他的创建过程为1.生产者通道绑定交换机channel.exchangeDeclare("fanout_ex","fanout");其中两个参数分别表示要绑定的交换机(不存在就创建)和交换机的类型2. 生产者向交换机发送消息在fanout模式下,生产的消息都是发送给交换机而不是队列。channel.basicPublish("fanout_ex","",null, "发送给交换机的信息<>原创 2020-06-16 17:28:32 · 432 阅读 · 0 评论 -
RabbitMq学习(3) WorkQueue消息队列以及RabbitMq的消息确认机制
一、WorkQueue模型WorkQueues模型是一个生成者向一个消费队列生成多条消息,由多个消费者进行消费。二、消息自动确认与手动确认1. 自动确认假设两个消费者C1, C2。它们的处理信息能力是1:10。当这两个消费者同时开始消费队列中的信息时,自动确认情况下,队列将平均的将队列中的消息分发给两个队列。在接受到消息之后,两个队列会自动确认消息已收到,并开始处理。// 第二个参数autoAck设置为true 表示开启自动确认channel.basicConsume("work-queue"原创 2020-06-16 15:49:33 · 289 阅读 · 0 评论 -
RabbitMq学习(2) queueDeclare()/ basicPublish() API详解
一、queueDeclare(…)queueDeclare()用于实现通道与队列的绑定。它包含5个参数。String queue: 被绑定的消息队列名,当该消息队列不存在时,将新建该消息队列Boolean durable: 是否持久化消息队列, 该参数持久化的仅为队列,而不包含队列中的消息Boolean exclusive: 该通道是否独占该队列Boolean autoDelete: 消费完成时是否删除队列, 该删除操作在消费者彻底断开连接之后进行。Map<String, Object&原创 2020-06-16 14:26:58 · 5171 阅读 · 0 评论 -
RabbitMq学习(1) HelloWorld简单队列模型
一、HelloWord模型一个生产者绑定一个消息队列对应一个消费者的简单模型。如图所示:二、创建RabbitMq连接先搞一个 RabbitMqUtil.getConnection()方法,通过RabbitMq 的 ConnectionFactory工厂类,创建一个消息连接后返回该连接:package hello;import com.rabbitmq.client.Connection;import com.rabbitmq.client.ConnectionFactory;import j原创 2020-06-16 11:28:15 · 312 阅读 · 0 评论
分享