一、认识RabbitMQ及用途MessageQueue(MQ)相对于一些大点的公司都会使用这个MQ,比如像kafka,rabbitmq,activeMQ,rocketMQ主要用于系统与系统之间,或者程序与程序之间进行数据的传递,那么作为消息中间件,我们可以将它作为消息代理服务器,最主要的就是作用就是系统之间的信息进行”结藕“,MQ是数据可靠性的重要保障。那么说起mq的作用之前呢,比如我们以前会遇到
分类:
其他好文 时间:
2020-02-11 09:23:18
阅读次数:
53
1.现状描述 集群其中一台物理机未知原因导致单用户无法登陆机器,该物理机需要重启修改密码或者重装系统。该台为master节点,运行正常。配置策略为: 异步刷盘 主从异步复制 如果直接下线该master,由于主从异步复制,可能导致部分消息来不及复制到slave造成消息丢失。所以该方案不可行。另一种方案 ...
分类:
其他好文 时间:
2020-02-10 10:01:41
阅读次数:
125
1.1. 控制台使用 RocketMQ 提供有控制台及一系列控制台命令,用于管理员对主题,集群,broker 等信息的管理; 登录控制台 首先进入RocketMQ 工程,进入/RocketMQ/bin 在该目录下有个mqadmin 脚本 查看帮助 在mqadmin 下可以查看有哪些命令 sh mqa ...
分类:
其他好文 时间:
2020-02-06 14:53:01
阅读次数:
103
producer 在发送消息的时候,会生成一个 "唯一" 的 msgId,broker 会为这个 msgId 创建哈希索引 UNIQ_KEY 由客户端生成 org.apache.rocketmq.common.message.MessageClientIDSetter#createUniqID ms ...
分类:
其他好文 时间:
2020-01-30 14:40:40
阅读次数:
103
DefaultMQPushConsumer(以push为例).start()调用mQClientFactory.start(),其中pullMessageService.start在一个循环中从pullRequestQueue中获取pullRequest, 执行pullMessage方法,调用的是r ...
分类:
其他好文 时间:
2020-01-29 21:25:32
阅读次数:
75
不管是DefaultMQProducer还是DefaultMQPushConsumer,本质都是封装类,发起请求的实际上是RemotingClient, 它的start方法调用之后,启动了一个netty的客户端bootstrap,每次需要与nameService或者broker进行连接的时候,调用 ...
分类:
其他好文 时间:
2020-01-28 19:20:32
阅读次数:
134
开课导读 序号|文内章节|视频 : :|: |: 1| "概述" | 2| "讲师介绍" | 3| "理念与目标" | 4| "授课方式" | 5| "学习方法" | 6| "课程列表" | 请参照如上 进行阅读 1.概述 互联网行业是技术迭代速度最快的行业,作为互联网行业从业者,我们必须不断的学习 ...
分类:
其他好文 时间:
2020-01-21 13:25:21
阅读次数:
89
这节介绍RocketMQ客户端的启动流程,即Consumer和Producer的启动流程。 1. 客户端demo 首先先看下客户端的demo Producer: Producer和Consumer的启动类似,在初始化然后进行必要设置(主要是客户端所属的Group和NameSe ...
分类:
其他好文 时间:
2020-01-18 01:14:30
阅读次数:
73
comitlog文件 ConsumerQueue文件 IndexFile文件 RocketMQ将所有主题的消息存储在同一个文件中,确保消息发送时顺序写文件。 为了提高消息消费的效率RocketMQ引入了ConsumeQueue消息队列文件,每个消息主题包含一个多个消息消费队列,每一个消费队列有一个消 ...
分类:
其他好文 时间:
2020-01-17 09:16:40
阅读次数:
110
RemotingCommand: flag倒数第一位表示请求类型,0请求1返回。倒数第二位1.表示oneway 单条消息发送时,消息体的内容将保存在body种,批量消息发送,需要将多条消息体的内容存储在body中,RocketMQ采取的方式是,对单条消息内容使用固定格式进行存储 ...
分类:
其他好文 时间:
2020-01-17 00:15:26
阅读次数:
90