RocketMQ
文章平均质量分 70
Mergades
专注于应用架构设计。
展开
-
RocketMQ分布式事务简介
转载 https://www.infoq.cn/article/2018/08/rocketmq-4.3-release为什么需要分布式事务在微服务架构中,随着服务的逐步拆分,数据库私有已经成为共识,这也导致所面临的分布式事务问题成为微服务落地过程中一个非常难以逾越的障碍,但是目前尚没有一个完整通用的解决方案。其实不仅仅是在微服务架构中,随着用户访问量的逐渐上涨,数据库甚至是服务的分片、分...转载 2020-02-12 15:18:39 · 575 阅读 · 0 评论 -
容器化后 部署RocketMQ consumer instanceName重复?
现象容器化后,不同的RocketMQ的consumer部署在同一个容器。某开发小年轻和我说会导致client的InstanceName重复。解决查看代码DefaultMQPushConsumerImpl#start if (this.defaultMQPushConsumer.getMessageModel() == MessageModel.CLUSTERING) { ...原创 2019-12-23 09:33:07 · 1049 阅读 · 0 评论 -
RocketMQ——NameServer启动流程
NameServer负责MQ消息的路由。生产者发送消息前,先从NameServer获取broker列表,然后根据负载均衡算法,找到broker发送消息。NameServer本地启动流程查看mqnameserv.sh脚本,我们看下核心的启动方法sh ${ROCKETMQ_HOME}/bin/runserver.sh org.apache.rocketmq.namesrv.Namesrv...原创 2019-12-04 21:33:12 · 685 阅读 · 0 评论 -
RocketMQ——NameServer 路由规则
RocketMQ路由注册是通过Broker与NameServer的心跳功能实现。Broker启动时向集群中所有的NameServer发送心跳包,每隔30秒向集群中的所有NameServer发送心跳,NamerServer收到心跳包会更新brokerLiveTable缓存中的BrokerLiveInfo的lastUpdateTimestamp,然后NameServer每隔十秒扫描brokerLive...原创 2019-12-09 19:12:30 · 635 阅读 · 0 评论 -
RocketMQ——消息发送
概述RocketMQ消息发送方式:同步(sync)、异步(async)、单向(oneway)消息Message简介org.apache.rocketmq.common.message.Messagepublic class Message implements Serializable { private static final long serialVersionUI...原创 2019-12-14 15:14:10 · 619 阅读 · 0 评论 -
RocketMQ——RocketMQ消息存储
DefaultMQPushConsumer属性 consumerGroup 消费组名称 messageModel 消息消费模式,分为集群模式和广播模式 consumeFromWhere 消费者开始消费的位置,默认为最大偏移量 CONSUME_FROM_LAST_OFFSET allocateMessageQueueStrategy 集群模式下消...原创 2019-12-26 19:12:15 · 409 阅读 · 0 评论 -
RocketMQ——消费过程
PullMessageService负责拉取消息,从远端服务器拉取消息后存储到ProcessQueue中,然后调用ConsumeMessageService#submitConsumeRequest 方法进行消费,适应小城池来消费消息,确保消息拉取与消息消费的解耦。1.jpg消息消费ConsumeMessageConcurrentlyService#submitCon...原创 2019-12-28 13:15:48 · 552 阅读 · 0 评论