![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
rocketmq
以实战案例为主
优惠券已抵扣
余额抵扣
还需支付
¥9.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
小码农叔叔
这个作者很懒,什么都没留下…
展开
-
基于rocketMq实现分布式事务解决方案
前言在处理分布式事务的问题上,除了前几篇谈到的可以使用seata,Hmily保证事务的最终一致性之外,使用消息队列也可以达到同样的效果使用消息中间件解决分布式事务的问题,是在分布式事务框架还没有真正流行起来的时候比较常用的解决此类问题的手段。使用消息中间件解决分布式事务问题,也有2种主要的思考方向,一种是通过消息表,另一种就是借助消息中间件自身的事务特性,比如rocketMq在4.X版本之后提...原创 2020-05-05 14:41:23 · 13649 阅读 · 4 评论 -
rocketMq发送事务消息
事务消费我们经常支付宝转账余额宝,这是日常生活的一件普通小事,但是我们思考支付宝扣除转账的钱之后,如果系统挂掉怎么办,这时余额宝账户并没有增加相应的金额,数据就会出现不一致状况了。上述场景在各个类型的系统中都能找到相似影子,比如在电商系统中,当有用户下单后,除了在订单表插入一条记录外,对应商品表的这个商品数量必须减1吧,怎么保证?!在搜索广告系统中,当用户点击某广告后,除了在点击事件表中增加一...原创 2019-10-07 23:39:36 · 11418 阅读 · 0 评论 -
rocketMq双master集群模式下故障演练
在上一篇,我们简单搭建了rocketMq双master的集群,沿用这个思路,这一篇我们用代码来模拟一下rocketMq集群故障情况下完成自动切换的效果。1、启动两个节点的broker和nameserver第一台机器,192.168.111.133,启动的过程和信息如下,第一台机器,192.168.9.147,启动的过程和信息如下,看到如上信息,说明两个节点成功启动,然后我们看看代码的具...原创 2019-06-08 13:26:54 · 3536 阅读 · 0 评论 -
linux环境下rocketMq双master集群搭建
为什么要使用集群在生产环境中,经常会有意外的情况发生,对于rocketmq也不例外,单节点情况下,如果出现网络闪断,服务器掉电或宕机之类的,如果服务器不能及时恢复,很可能造成丢消息的情况,因此,集群环境下可以保证服务的高可靠用性。rocketMq集群模式RocketMQ的集群部署方式有多种,其中包括单个Master、多个Master、多Master多Slave模式(异步复制)以及多Maste...原创 2019-06-07 18:13:15 · 2122 阅读 · 0 评论 -
RocketMq 事务消息使用
在Mq中,由于消息从producer发送出去到最终被消费者消费,中间需要经过mq的服务器进行中转,在rocketMq中即为broker,rabbitmq中为exchange,意思差不多,这样一来消息的投递就有了不确定性,因此在rocketMq中,引入了事务性消息这一概念;1、RocketMq事务消息是保证事务的最终一致性;2、半消息,producer消息投递出去了,到达了broker,但是...原创 2019-05-26 23:01:53 · 12618 阅读 · 7 评论 -
rocketMq 顺序消费
什么是顺序消费?消息有序指的是一类消息消费时,能按照发送的顺序来消费。例如:一个订单产生了 3 条消息,分别是订单创建、订单付款、订单完成。消费时,要按照这个顺序消费才有意义。与此同时多笔订单之间又是可以并行消费的。rocketmq是怎么实现顺序消费的呢?①rocketmq保证同一个订单的消息,一定要发送到同一个队列②并且该队列只有一个消费者,也就是说 同一个队列,不能出现多个消费者并行消...原创 2019-05-25 18:27:34 · 2023 阅读 · 0 评论 -
RocketMq 消费消息的两种方式 pull 和 push
在RocketMQ中一般有两种获取消息的方式,一个是拉(pull,消费者主动去broker拉取),一个是推(push,主动推送给消费者)区别是:push方式里,consumer把轮询过程封装了,并注册MessageListener监听器,取到消息后,唤醒MessageListener的consumeMessage()来消费,对用户而言,感觉消息是被推送过来的。pull方式里,取消息的过程需要...原创 2019-05-25 16:28:12 · 28934 阅读 · 6 评论 -
RocketMq发送延迟消息
什么是延迟消息?对于消息中间件来说,producer将消息发送到mq的服务器,但并不期望这条消息马上被消费,而是推迟到当前时间点之后的某个时间点后再投递到queue中让consumer进行消费,延迟消息的使用场景很多,一种比较常见的场景就是在电商系统中,订单创建后,会有一个等待用户支付的时间窗口,一般为30分钟,30分钟后consumer收到这条订单消息,然后程序去订单表中检查当前这条订单的支付...原创 2019-05-25 10:59:51 · 25627 阅读 · 3 评论 -
java使用rocketMq
RcoketMQ 是一款低延迟、高可靠、可伸缩、易于使用的消息中间件,号称消息中间件中的最强者,支持高并发,亿级的消息堆积能力,在高并发的电商,金融等业务场景中多有使用。其具有以下特性:支持发布/订阅(Pub/Sub)和点对点(P2P)消息模型 在一个队列中可靠的先进先出(FIFO)和严格的顺序传递 支持拉(pull)和推(push)两种消息模式 单一队列百万消息的堆积能力 支持多种消...原创 2018-09-10 18:30:20 · 25424 阅读 · 3 评论 -
springboot整合使用rocketMq
前文,我们讲述了rocketMq的基本使用,接下来聊聊如何使用springboot整合使用rocketMq;1)新建maven工程,工程结构目录如图: constants包下存放着常量信息,这里保存的是自定义的错误码,为将被异常类调用,consumer包下存放的是消费者相关的配置,一个文件是消费者的配置,用于APP启动的时候全局注册,一个文件为消费者端的监听器,用于监听生产者发送过来...原创 2018-09-11 18:33:22 · 36571 阅读 · 15 评论