![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
RocketMQ
没有不忧伤的故事
这个作者很懒,什么都没留下…
展开
-
Rocketmq - 1 介绍和核心概念
d原创 2018-08-19 06:20:20 · 3626 阅读 · 0 评论 -
Rocketmq - 2 集群架构模型和部署结构图
RocketMQ的Broker集群搭建Master和slaver类似Redis和MySql的主从,Slaver只有读的权限,没有写的权限。RocketMQ提供了多种的集群搭建,具体如下:1.单个 Master 这种方式风险较大,一旦 Broker 重启或者宕机时,会导致整个服务不可用,不建议线上环境使用2. 多 Master 模式 一个集群无 Slave,全是 Master,...原创 2018-08-19 08:00:05 · 5378 阅读 · 1 评论 -
RocketMQ - 5 源码模块分析
rocketMQ采用maven父子项目拆分的项目构造,3.2.6版本有9个主要模块,还有一些其他模块。4.3最新版本总共有18个目录 common:通用的枚举、基类方法、或者数据结构,包名有admin、consumer、filter、hook、message remoting:使用netty4的客户端、服务端,使用fastjson序列化,自定义二进制协议 srvutil:只有一个Serv...原创 2018-08-26 12:48:15 · 530 阅读 · 0 评论 -
Rocketmq - 3 部署双主环境
部署基于两个服务器,阿里云和腾讯云。阿里云作为broker-a,腾讯云作为broker-b。因为基于实操,与虚拟机不同,且因为服务器平台不同,有出现过不少小毛病。 请注意:阿里云,阿里云由于有安全组功能,对于不在安全组内的端口将会进行屏蔽,会影响rocketmq的启动,所以需要在阿里云的控制台中对应有的rocketmq端口添加安全组规则1.软件准备http://rocketmq.apac...原创 2018-08-17 03:21:03 · 1068 阅读 · 0 评论 -
RocketMQ - 6 生产者,顺序消息
Producer类型Producer主要职能就是生产消息,发送消息。它可以对多个主题发送消息,甚至可以通过Tag定义些简单的过滤。更复杂的过滤可以使用filter组件来进行相应的业务操作 RocketMQ提供了3种不同模式的Producer 1.NormalProducer(普通) 2.OrderProducer(顺序) 3.TransactionProducer(事务)Produ...原创 2018-08-26 20:59:05 · 1164 阅读 · 0 评论 -
RocketMQ - 8 消费者 push和pull模式,配置参数
PushConsumer配置consumerGroup DEFAULT_CONSUMER Consumer 组名,多个 Consumer如果属于一个应用,订阅同样的消息,且消费逻辑一致,则应该将它们归为同一组 messageModel CLUSTERING 消息模型,支持以下两种 1、集群消费 2、广播消费 consumeFromWhere CONSUME_FROM_LAST_OFF...原创 2018-08-27 12:06:34 · 8127 阅读 · 0 评论 -
rocketmq - 9 消息重试,消息幂等去重,消息模式
Rocketmq提供了消息重试机制,这是一些其他消息队列没有的功能。我们可以依靠这个优秀的机制,而不用在开发中增加更多的业务代码去实现消息重试Consumer 消费消息失败后,要提供一种重试机制,令消息再消费一次。Consumer 消费消息失败通常可以认为有以下几种情冴由于消息本身的原因,例如反序列化失败,消息数据本身无法处理(例如话费充值,当前消息的手机号被注销,无法充值)等。 ...原创 2018-08-28 11:52:05 · 6483 阅读 · 1 评论 -
rocketmq - 10 双主双从模式
双主双从模式比起双主模式要多了两台从机。其好处在于主节点宕机后,从节点可以继续对外提供已经同步到broker上面的消息。从节点有主节点数据的全量copy,并且2M-2S模式下我们可以进行水平扩展,增加消息中间件的吞吐量和消息堆积能力。关于多主多从模式,前面关于broker的集群有描述过异步复制和同步双写。异步复制性能高,但可能丢失毫秒级别的少量数据。同步双写性能比异步低百分之十,但不会有丢失数...原创 2018-08-28 13:49:02 · 2403 阅读 · 1 评论 -
Rocketmq - 4 Broker配置文件,存储和HelloWorld
Broker配置文件#所属集群名字 brokerClusterName=rocketmq-cluster#broker名字,注意此处不同的配置文件填写的不一样 brokerName=broker-a#0 表示 Master,>0 表示 Slave brokerId=0 #nameServer地址,分号分割brokerIP1 = 阿里云IPnamesrvAddr=阿...原创 2018-08-26 02:34:33 · 8132 阅读 · 0 评论