RabbitMQ
文章平均质量分 84
RabbitMQ
Knight_AL
这个作者很懒,什么都没留下…
展开
-
Rabbitmq延迟消息
只是在某一个设置Dead Letter Exchange的队列中有消息过期了,会自动触发消息的转发,发送到Dead Letter Exchange中去。对队列设置就是队列没有消费者连着的保留时间,也可以对每一个单独的消息做单独的设置。我们创建一个队列queue.temp,在Arguments 中添加x-message-ttl 为5000 (单位是毫秒),那所在压在这个队列的消息在5秒后会消失。一个消息在满足如下条件下,会进死信路由,记住这里是路由而不是队列,一个路由可以对应很多队列。如何保证消息幂等性?原创 2023-08-14 15:13:06 · 1146 阅读 · 0 评论 -
Rabbitmq消息不丢失
有时,业务处理成功,消息也发了,但是我们并不知道消息是否成功到达了rabbitmq,如果由于网络等原因导致业务成功而消息发送失败,那么发送方将出现不一致的问题,此时可以使用rabbitmq的发送确认功能,即要求rabbitmq显式告知我们消息是否已成功发送。有时,消息被正确投递到消费方,但是消费方处理失败,那么便会出现消费方的不一致问题。由于消息队列是公共模块,我们把mq的相关业务封装到该模块,其他service微服务模块都可能使用,因此我们把他封装到一个单独的模块,需要使用mq的模块直接引用该模块即可。原创 2023-08-13 20:55:21 · 3301 阅读 · 0 评论 -
RabbitMQ如何避免消息丢失
在方法中判断 ack,如果为true,则发送成功,如果为false,则发送失败,需要处理。,事务机制是同步的,你提交一个事务之后会阻塞在那儿,但是confirm机制是异步的,你发送个消息之后就可以发送下一个消息,然后那个消息rabbitmq接收了之后会异步回调你一个接口通知你这个消息接收到了。:因为网络传输的不稳定性,当生产者在向MQ发送消息的过程中,MQ没有成功接收到消息,但是生产者却以为MQ成功接收到了消息,不会再次重复发送该消息,从而导致消息的丢失。:开启RabbitMQ的持久化。原创 2023-03-31 13:43:14 · 515 阅读 · 0 评论 -
RabbitMQ中死信队列和延迟队列
先从概念解释上搞清楚这个定义,死信,顾名思义就是无法被消费的消息,字面意思可以这样理解,一般来说,producer将消息投递到broker或者直接到queue里了,consumer从queue取出消息进行消费,但某些时候由于特定的原因导致queue中的某些消息无法被消费,这样的消息如果没有后续的处理,就变成了死信,有死信,自然就有了死信队列;原创 2023-03-30 18:44:45 · 2055 阅读 · 0 评论 -
RabbitMQ中TTL
RabbitMQ可以对消息设置过期时间,也可以对整个队列(Queue)设置过期时间。⑤ 查看消息,可以看到消息,但十秒之后,消息自动消失,因为我们设置了十秒消息过期。TTL 全称 Time To Live(存活时间/过期时间)。参数:表示过期时间,单位毫秒 ,10000表示10秒。当消息到达存活时间后,还没有被消费,会被自动清除。查看控制台,发现有10条消息,十秒之后自动过期。在队列后面添加.ttl(10000)为10s。① 修改管理后台界面,增加队列。运行程序,查看后台管理系统。原创 2023-03-30 16:12:39 · 756 阅读 · 0 评论 -
RabbitMQ消费端限流
Consumer 限流机制。生产者先生产10条数据。原创 2023-03-30 14:28:45 · 92 阅读 · 0 评论 -
RabbitMQ消息的可靠投递
其中自动确认是指,当消息一旦被Consumer接收到,则自动确认收到,并将相应 message 从 RabbitMQ 的消息缓存中移除。但是在实际业务处理中,很可能消息接收到,业务处理出现异常,那么该消息就会丢失。如果设置了手动确认方式,则需要在业务处理成功后,调用channel.basicAck(),手动签收,如果出现异常,则调用channel.basicNack()方法,让其自动重新发送消息。如果出现异常,则在catch中调用 basicNack,拒绝消息,让MQ重新发送消息。4.队列和交互机绑定。原创 2023-03-28 20:14:17 · 683 阅读 · 0 评论 -
RabbitMQ工作模式
RabbitMQ工作模式原创 2023-02-14 10:36:16 · 409 阅读 · 0 评论 -
RabbitMQ入门
RabbitMQ入门原创 2023-02-11 11:40:13 · 503 阅读 · 0 评论 -
RabbitMQ安装及配置
RabbitMQ安装及配置原创 2023-02-10 20:20:48 · 706 阅读 · 0 评论 -
消息中间件概述
MQ全称为, 消息队列(MQ)是一种应用程序对应用程序的通信方法。介绍:消息队列就是基础数据结构中的“先进先出”的一种数据机构。想一下,生活中买东西,需要排队,先排的人先买消费,就是典型的“先进先出”。指的是程序之间通过消息发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。指的是应用程序通过队列来通信。消息队列在大型电子商务类网站,如京东、淘宝、去哪儿等网站有着深入的应用,为什么会产生消息队列?原创 2023-02-10 11:17:23 · 1193 阅读 · 0 评论