RocketMQ最佳实践之Producer 投递状态 发送消息时,将得到包含SendStatus的SendResult.首先,我们假设消息的isWaitStoreMsgOK = true(默认是true).如果不是,我们将总会得到SEND_OK,如果没有抛出异常.下面是关于每个状态的描述列表: FLUSH_DISK_TIMEOUT 如果 Broker 设置MessageStoreConfig的FlushDiskType=SYNC_FLUSH(默认是ASYNC_FLUSH),并且代理没有在Mess…
文章转载自:http://www.mydlq.club/article/96/ 系统环境: 系统版本:CentOS 7.8 RocketMQ 版本:4.7.0 Docker 版本:19.03.13 一.RocketMQ 简介 RocketMQ是一个纯 Java.分布式.队列模型的开源消息中间件,前身是 MetaQ,是阿里参考 Kafka 特点研发的一个队列模型的消息中间件,后开源给 Apache 基金会成为了 Apache 的顶级开源项目,具有高性能.高可靠.高实时.分布式特点. 二.Rocke…
声明:本文非EamonSec原创,copy自网上下载的某个个文件 1.RocketMQ介绍 1.1. 简介 RocketMQ 是一款分布式.队列模型的消息中间件,具有以下特点: 能够保证严格的消息顺序 提供丰富的消息拉取模式 高效的订阅者水平扩展能力 实时的消息订阅机制 亿级消息堆积能力 选用理由: l 强调集群无单点,可扩展,任意一点高可用,水平可扩展. l 海量消息堆积能力,消息堆积后,写入低延迟. l 支持上万个队列 l 消息失败重试机制 l 消息可查询 l 开源社区活跃 l 成熟度(经过…
1.官网 https://rocketmq.apache.org/ 官方安装文档 https://rocketmq.apache.org/docs/quick-start/ 2.rocketmq多主配置文件参考(conf/2m-noslave/broker-a.properties) 10.0.0.2服务器 [root@a ~]# cat /usr/local/rocketmq/conf/2m-noslave/broker-a.properties brokerClusterName=rocke…
由于apache 官网的 docker image 是单点,要实现集群方式部署. rocketmq 分为 nameserver 和 broker , 对于之间调用频繁的服务,会增加网络压力, 所以 考虑又网络通信 变成 进程间通信, 那么1个pod 中包含两个container. 关于rocketmq 下载编译, https://www.cnblogs.com/fengjian2016/p/10150394.html 拿到 编译后的  apache-rocketmq , 需要修改一些配置, 例如…
1. 修改RocketMQ默认启动端口 由于只有两台机器,部署双主双从需要四个节点,所以只能修改rocketmq的默认启动端口,从官网下载rocketmq的source文件,解压后使用idea打开,全局搜索9876,将所有使用9876端口的地方改为9877. 在终端打开,使用:mvn -Prelease-all -DskipTests clean install命令打包,打包完成后在项目的distribution\target将会有如下两个包: 分别是linux和win下运行的包. 将后缀为.t…
跟踪状态基础数据: kl_qingjd/kl_qingjd_data.xml <?xml version="1.0"?><openerp>    <data noupdate="1"> <!-- kl_qingjd-related subtypes for messaging / Chatter -->        <record id="mt_qingjd_confirm" model=&…
最近对系统进行压测,发现发送消息到消息队列的时候出现如下错误: com.alibaba.rocketmq.client.exception.MQBrokerException: CODE: 2  DESC: [TIMEOUT_CLEAN_QUEUE]broker busy, start flow control for a while, period in queue: 201ms, size of queue: 1 经查询发现RocketMq在4.1版本以后为producer增加了2个配置,…
package com.bfxy.rocketmq.quickstart; import java.util.List; import org.apache.rocketmq.client.exception.MQBrokerException;import org.apache.rocketmq.client.exception.MQClientException;import org.apache.rocketmq.client.producer.DefaultMQProducer;impo…
前言 hello,小伙伴们,王子又来和大家研究RocketMQ的原理了,之前的文章RocketMQ生产部署架构如何设计中,我们已经简单的聊过了生产者是如何发送消息给Broker的. 我们简单回顾一下这个过程. 生产者首先声明一个Topic,然后为了把消息存到对应的Topic中,先从NameServer拉取注册信息获取到Topic存放在哪个Broker中,然后就可以访问对应的Broker发送消息了. 大体流程就是这样,那么这个过程中具体都发生了什么呢,王子今天就和大家深入的探讨一下这其中的奥秘.…