RocketMQ 5.0 本地源码启动Cluster模式指南
这里是weihubeats,觉得文章不错可以关注公众号小奏技术,文章首发。拒绝营销号,拒绝标题党
源码版本
这里选用最新的稳定版本5.0
启动方式
目前5.0的架构发生了重大调整,添加了一层rocketmq-proxy
,可以通过grpc
的方式接入
目前部署方式分为两种
- Local 模式:由于 Local 模式下 Proxy 和 Broker 是同进程部署,Proxy本身无状态,因此和之前4.0版本的部署方式基本相同
- Cluster 模式:在 Cluster 模式下,Broker 与 Proxy分别部署,我可以在 NameServer和 Broker都启动完成之后再部署 Proxy。
启动
1. 下载源码
源码地址: https://github.com/apache/rocketmq
下载完成后我们切换到最新稳定分支release-5.0.0
版本
2. 启动NameServer
在启动这个类的时候我们需要配置一下环境信息,不然会报错找不到环境变量
主要是配置Environment variables
值为:
ROCKETMQ_HOME=****/rocketmq/distribution
填写指定到
distribution
路径即可
注意这里我们的jdk版本要是
jdk8
,如果是高版本会启动失败,而且同时存在多个版本的jdk会有交叉编译bug
具体解决方案可以参考这里 https://www.morling.dev/blog/bytebuffer-and-the-dreaded-nosuchmethoderror/
启动成功后会输出如下log
3. 启动rocketmq-proxy+broker
同上nameserver
配置环境变量
ROCKETMQ_HOME=****/rocketmq/distribution
添加启动参数
org.apache.rocketmq.proxy.ProxyStartup
-n
127.0.0.1:9876
-bc
/Users/xx/Desktop/sofe/java/rocketmq/distribution/conf/2m-2s-async/broker-a.properties
-pm
Local
配置了启动参数后会自动启动broker
+proxy
启动成功输出如下log
自此启动完成
发送消息磁盘空间不足问题
如果我们磁盘空间不足发送消息也会报错,不然我们发送消息,我们可以修改磁盘限制
这里限制的默认值我们改成99
然后将这里的判断删除
grpc发送接受消息
我们可以使用官方api提供的demo
github地址: https://github.com/apache/rocketmq-clients
- 消息发送
- 消息消费
RocketMQ 5.0 本地源码启动Cluster模式指南相关推荐
- windows本地编译调试hbase-3.0.0-alpha-2-SNAPSHOT源码
windows本地编译调试hbase-3.0.0-alpha-2-SNAPSHOT源码 前言 代码下载,编译与调试 问题解决 前言 研究hbase的原因有两方面:一是自己是做大数据相关的开发工作,hb ...
- android 4.0模拟器启动不了,Android 4.0 framework源码修改编译,模拟器运行不起来,求助...
当前位置:编程学习 > wap >> Android 4.0 framework源码修改编译,模拟器运行不起来,求助 我下载编译了android 4.0 ICS的源码,然后能利用编译 ...
- android4.0.3源码之硬件gps简单移植
[转]我和菜鸟一起学android4.0.3源码之硬件gps简单移植 2013-7-5阅读94 评论0 关于android定位方式 android 定位一般有四种方法,这四种方式分别是GPS定位.WI ...
- ZABIX5.0.7源码安装详细过程
ZABIX5.0.7源码安装详细过程 Zabbix5.0源码安装文档 一:Linux初始设置 关闭selinux vi /etc/selinux/config SELINUX=disabled 关闭网 ...
- Apache ZooKeeper - 使用源码启动ZK集群模式
文章目录 Pre 配置总览 端口说明 Node 1 [zoo1.cfg ] [myid] Node 2 [zoo2.cfg ] [myid] Node 3 [zoo3.cfg ] [myid] 启动集 ...
- Spark2.4.0 SparkEnv 源码分析
Spark2.4.0 SparkEnv 源码分析 更多资源 github: https://github.com/opensourceteams/spark-scala-maven-2.4.0 时序图 ...
- Jmeter-3.0的源码导入eclipse并执行
最近在研究jmeter二次开发,所以需要先jmeter导入Eclipse,后续还需要学习jmeter源码以及二次开发的相关知识,到时候也会分享出来,下面是jmeter导入Eclipse的过程 首先去官 ...
- android 系统源码调试 局部变量值_如何方便快速的整编Android 9.0系统源码?
点击上方"刘望舒",选择"星标" 多点在看,就是真爱! 作者 : 刘望舒 | 来源 :刘望舒的博客地址:http://liuwangshu.cn/fram ...
- 【flink】Flink 1.12.2 源码浅析 : yarn-per-job模式解析 JobMasger启动 YarnJobClusterEntrypoint
1.概述 转载:Flink 1.12.2 源码浅析 : yarn-per-job模式解析 [三] 上一章:[flink]Flink 1.12.2 源码浅析 : yarn-per-job模式解析 yar ...
最新文章
- AI一分钟 | 厉害了!BBC记者挑战中国天网工程,潜逃仅7分钟被抓;百度狂砸20亿,设国内最大规模的AI专项风投基金
- 英伟达显卡功率(频率)锁死
- VTK:Filtering之CombinePolyData
- Extjs4前端开发代码规范参考
- 查找一个类的好方法,可节省做很多层的传递
- 导出zabbix的IT service报表
- 利用application在页面中显示访问次数
- DeepFake技术--DeepFakes 概述(一)(二)
- 《JAVA程序设计教程(第7版)英文版》pdf 附下载链接
- java日期字符串排序_java字符串日期排序比较问题
- did双重差分法_二重差分法分析(DID)
- 算法时间复杂度Θ(n2)与 O(n2)
- 一:以理论结合实践方式梳理前端 ES 6+ ——— ES 6+ 能干什么
- ggplot画 ump 和tsne 从seurat中使用addmodule得到的umap 使用ggplot画图
- EndNote仅修改一处引文格式为作者(年代)即Author(Date)的方法
- web哪里有php文件,web文件管理器
- python beautifulsoup库
- CF1004D Sonya and Matrix
- RabbitMQ环境的搭建和报错
- 如何从Linux下载一个文件到本地
热门文章
- Leetcode 704.二分查找 27.移除元素 代码随想录day1
- 企业级分布式批处理方案
- android方向触摸事件,Android触摸事件如何传递?
- MySQL中复制表/结构的写法
- 登录和第三方授权(Cookie和Authorization)
- 在虚拟机里虚拟打电话的代码
- 视频安防“上帝视角“的畅想
- c语言模拟银行ATM的程序,简单模拟银行ATM取款系统 | C/C++程序员之家
- java.io.IOException Failed to replace a bad datanode
- 使用 @Transactional