RabbitMq 去下订单,这么多细节你不看吗?

本文介绍了RabbitMQ在处理下单业务时的关键细节,包括消息推送与拉取模式、消费者假死现象、批量确认与单条确认策略、延迟队列在订单失效场景的应用,以及如何通过幂等设计处理重复消费问题。同时,讨论了消息成功投递的保证方法和应对消息丢失的策略。
摘要由CSDN通过智能技术生成

先来个题外话~

servlet 3.0规范
1.其实提高并发请求,就是减少tomcat线程池中,线程的执行时间,说白了就是提高利用率。而servlet 3.0就是,一个用户请求过来了,访问servlet拿到一个线程之后去处理了业务逻辑,这时候业务逻辑块开启了     一个新的线程去处理自己的业务逻辑,处理完之后,在此调用  servlet.虽说次数增多了,但是两次时间都是比较短,整体的并发量也就上去了。

rabbitMQ 下订单

1.有两种模式,一种是推,一种是拉,默认是推,拉是,消息执行完主动去拉,会造成消息堆积 kafaka是只有推模式的。

2.消费者假死现象,消费端有异常造成的,导致没有手动确认,比如代码异常,数据库异常等等。消费端去消费消息,不是直接消费消息的,而是本地有一个消息队列

3.消费者及消费线程,不是说100000个就会创建这么多线程的

4.消息单条确认,批量确认。批量确认会存在消息丢失的现象。rabbitmq的消息是有状态,所以比kafka性能低,单条确认加try catch,异常的话直接放到死信队列中

5.rabbitMQ 建议使用批量确认消息,减少网络通信,有异常可以先放到死信队列中


6.延迟队列,订单失效的业务场景,比如10分钟内没有支付的场景。定时任务可以做这个吗?不可以的,时效性是不准确的。

  延迟队列去做,生成订单以后,往mq里面发送一条消息,放到延迟队列里面,不是用来消费,是让里面的消息过期 的,消息一旦过期就会插

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

張義帥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值