这里是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模式指南相关推荐

  1. windows本地编译调试hbase-3.0.0-alpha-2-SNAPSHOT源码

    windows本地编译调试hbase-3.0.0-alpha-2-SNAPSHOT源码 前言 代码下载,编译与调试 问题解决 前言 研究hbase的原因有两方面:一是自己是做大数据相关的开发工作,hb ...

  2. android 4.0模拟器启动不了,Android 4.0 framework源码修改编译,模拟器运行不起来,求助...

    当前位置:编程学习 > wap >> Android 4.0 framework源码修改编译,模拟器运行不起来,求助 我下载编译了android 4.0 ICS的源码,然后能利用编译 ...

  3. android4.0.3源码之硬件gps简单移植

    [转]我和菜鸟一起学android4.0.3源码之硬件gps简单移植 2013-7-5阅读94 评论0 关于android定位方式 android 定位一般有四种方法,这四种方式分别是GPS定位.WI ...

  4. ZABIX5.0.7源码安装详细过程

    ZABIX5.0.7源码安装详细过程 Zabbix5.0源码安装文档 一:Linux初始设置 关闭selinux vi /etc/selinux/config SELINUX=disabled 关闭网 ...

  5. Apache ZooKeeper - 使用源码启动ZK集群模式

    文章目录 Pre 配置总览 端口说明 Node 1 [zoo1.cfg ] [myid] Node 2 [zoo2.cfg ] [myid] Node 3 [zoo3.cfg ] [myid] 启动集 ...

  6. Spark2.4.0 SparkEnv 源码分析

    Spark2.4.0 SparkEnv 源码分析 更多资源 github: https://github.com/opensourceteams/spark-scala-maven-2.4.0 时序图 ...

  7. Jmeter-3.0的源码导入eclipse并执行

    最近在研究jmeter二次开发,所以需要先jmeter导入Eclipse,后续还需要学习jmeter源码以及二次开发的相关知识,到时候也会分享出来,下面是jmeter导入Eclipse的过程 首先去官 ...

  8. android 系统源码调试 局部变量值_如何方便快速的整编Android 9.0系统源码?

    点击上方"刘望舒",选择"星标" 多点在看,就是真爱! 作者 :  刘望舒  |  来源 :刘望舒的博客地址:http://liuwangshu.cn/fram ...

  9. 【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 ...

最新文章

  1. AI一分钟 | 厉害了!BBC记者挑战中国天网工程,潜逃仅7分钟被抓;百度狂砸20亿,设国内最大规模的AI专项风投基金
  2. 英伟达显卡功率(频率)锁死
  3. VTK:Filtering之CombinePolyData
  4. Extjs4前端开发代码规范参考
  5. 查找一个类的好方法,可节省做很多层的传递
  6. 导出zabbix的IT service报表
  7. 利用application在页面中显示访问次数
  8. DeepFake技术--DeepFakes 概述(一)(二)
  9. 《JAVA程序设计教程(第7版)英文版》pdf 附下载链接
  10. java日期字符串排序_java字符串日期排序比较问题
  11. did双重差分法_二重差分法分析(DID)
  12. 算法时间复杂度Θ(n2)与 O(n2)
  13. 一:以理论结合实践方式梳理前端 ES 6+ ——— ES 6+ 能干什么
  14. ggplot画 ump 和tsne 从seurat中使用addmodule得到的umap 使用ggplot画图
  15. EndNote仅修改一处引文格式为作者(年代)即Author(Date)的方法
  16. web哪里有php文件,web文件管理器
  17. python beautifulsoup库
  18. CF1004D Sonya and Matrix
  19. RabbitMQ环境的搭建和报错
  20. 如何从Linux下载一个文件到本地

热门文章

  1. Leetcode 704.二分查找 27.移除元素 代码随想录day1
  2. 企业级分布式批处理方案
  3. android方向触摸事件,Android触摸事件如何传递?
  4. MySQL中复制表/结构的写法
  5. 登录和第三方授权(Cookie和Authorization)
  6. 在虚拟机里虚拟打电话的代码
  7. 视频安防“上帝视角“的畅想
  8. c语言模拟银行ATM的程序,简单模拟银行ATM取款系统 | C/C++程序员之家
  9. java.io.IOException Failed to replace a bad datanode
  10. 使用 @Transactional