http://blog.csdn.net/column/details/learningrocketmq.htmlhtml
http://jm.taobao.org/2017/01/12/rocketmq-quick-start-in-10-minutes/?from=timeline&isappinstalled=0app
业务方实现:分布式
(1)Producer端准备1张消息表,把update DB和insert message这2个操做,放在一个DB事务里面。ui
(2)准备一个后台程序,源源不断的把消息表中的message传送给消息中间件。失败了,不断重试重传。容许消息重复,但消息不会丢,顺序也不会打乱。.net
(3)Consumer端准备一个判重表。处理过的消息,记在判重表里面。实现业务的幂等。htm
RocketMQ解决分布式事务
(1) 发送Prepared消息
(2) update DB
(3) 根据update DB结果成功或失败,Confirm或者取消Prepared消息。中间件
http://blog.csdn.net/chunlongyu/article/details/53844393?from=timeline&isappinstalled=0blog