保证消息的安全 持久化 交换器持久化:声明交换器时指定持久化 队列持久化:声明队列时指定持久化 消息持久化:发送消息时指定持久化 一般队列和消息持久化要同时声明,此外消息假如进了交换器却找不到队列,也会丢失,必要时添加mandatory参数。 持久化会降低吞吐量。 消费者确认 订阅队列时设置auto ...
分类:
其他好文 时间:
2020-06-02 11:39:33
阅读次数:
58
建立Connection,创建Channel,注意Channel不能在线程间共享(非线程安全) 创建交换器和队列 消费者消费消息支持推和拉两种模式 推:通过consume方法订阅队列 拉:通过channel.basicGet方法获取消息 一旦consume以后,channel会被置为接收模式,直到取 ...
分类:
其他好文 时间:
2020-05-28 00:38:09
阅读次数:
65
1 前言 延迟队列的使用场景:1.未按时支付的订单,30分钟过期之后取消订单;2.给活跃度比较低的用户间隔N天之后推送消息,提高活跃度;3.过1分钟给新注册会员的用户,发送注册邮件等。 实现延迟队列的方式有两种: 1)通过消息过期后进入死信交换器,再由交换器转发到延迟消费队列,实现延迟功能; 2)使 ...
分类:
编程语言 时间:
2020-05-17 17:32:52
阅读次数:
71
一。rabbitmq基本知识 exchange: 交换器,接收生产者发送的消息并路由给对应的队列。三种常用的交换器类型:1.direct(发布订阅,完全匹配) 2。广播型 3.topic(主题,规则匹配) queue: 消息队列,用来保存消息直到发送给消费者。消息一直在队列中,知道消费者链接到队列将 ...
分类:
编程语言 时间:
2020-05-10 23:03:39
阅读次数:
91
Topic 模式 重点是理解交换器(exchange)、路由键(routing key)、队列名(queue name)三者之间的绑定关系。 topic 发送方: 发送方 关注参数主要有三个 交换器(exchange) 路由键(routing key) 和 消息 topic 消费方 消费方 关注点是 ...
分类:
编程语言 时间:
2020-04-22 00:13:18
阅读次数:
64
1、理论知识 rabbitmq交换机的类型: direct:消息中的路由键(routing key)如果和 Binding 中的 bindingkey 一致, 交换器就将消息发到对应的队列中。它是完全匹配、单播的模式。 fanout:每个发到 fanout 类型交换器的消息都会分到所有绑定的队列上去 ...
分类:
编程语言 时间:
2020-03-17 21:03:55
阅读次数:
63
〇、什么是消息队列 参考:新手也能看懂,消息队列其实很简单 RabbitMQ运行模型与名词解释 一、应答模式 1.什么是应答? 消息投递到交换器(exchange)中,交换器给我们的反馈,是保障消息投递成功的一种机制。 2.测试 配置: 1 #选择确认类型为交互 2 spring.rabbitmq. ...
分类:
编程语言 时间:
2020-02-15 23:39:01
阅读次数:
660
Routing(路由模式) 生产者将消息发送到direct交换器,在绑定队列和交换器的时候有一个路由key,生产者发送的消息会指定一个路由key,那么消息只会发送到相应key相同的队列,接着监听该队列的消费者消费信息. Direct exchange 会把消息路由到那些binding key与rou ...
分类:
其他好文 时间:
2020-02-13 00:31:49
阅读次数:
345
RabbitMQ topic 在之前我们将交换器的类型从fanout设置为direct后能够根据我们的选择获得响应的消息,虽然改良我们的消息日志系统,但是还有很多局限性,比如它不能基于多个标准进行路由 在我们的日志系统中我们可能不仅仅是依据消息的严重性进行订阅,还有可能同时基于消息的危险等级和消息来 ...
分类:
其他好文 时间:
2020-02-12 18:15:15
阅读次数:
76
实现原理: /** (1)创建一个正常的队列 Q1,目的是处理业务逻辑,比如发送订单消息等 ,对应交换器和绑定键 分别为 E1 和 Bingkey1 (2)创建一个延时消息队列 Q2,设定队列的延时时间为10s,对应的交换器和绑定键分别为 E2和Bingkey2;并在该队列创建时候,设定队列的 (a ...
分类:
其他好文 时间:
2020-02-12 10:37:47
阅读次数:
193