热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

RocketMQ源码一,启动篇

一、项目搭建和测试1.1代码拉取从官方仓库拉取:https:github.comapacherocketmq1.2源码结构目录目录名称作用brokerbroker模块

一、项目搭建和测试

1.1 代码拉取
从官方仓库拉取: https://github.com/apache/rocketmq

1.2 源码结构目录


目录名称

作用

broker

broker 模块(broke 启动进程)

client

消息客户端,包含消息生产者、消息消费者相关类

common

公共包

dev

开发者信息(非源代码)

distribution

部署实例文件夹(非源代码)

example

RocketMQ 例代码

filter

消息过滤相关基础类

filtersrv

消息过滤服务器实现相关类(Filter启动进程)

logappender

日志实现相关类

namesrv

NameServer实现相关类(NameServer启动进程)

openmessageing

消息开放标准

remoting

远程通信模块,给予Netty

srcutil

服务工具类

store

消息存储实现相关类

style

checkstyle相关实现

test

测试相关类

tools

工具类,监控命令相关实现类

1.3 下载 Maven 依赖


# 填入命令,并回车
mvn clean install -Dmaven.test.skip=true

 

1.4 调试
1.4.1 新建conf文件夹

 并将这三个配置copy到conf文件夹

 需要为 RocketMQ 配置环境变量

 

1.4.2 NameSrv 启动


成功:

 


1.4.3 BrokerSrv 启动
新建 data 文件夹,位置自定义,用于存储 broker 数据

修改 config 文件夹下的 broker.conf 文件

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
# namesrvAddr地址
namesrvAddr=127.0.0.1:9876
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
autoCreateTopicEnable=true#### 配置为上面设置的文件夹路径
# 存储路径
storePathRootDir=D:\\cass\\rocketmq-master\\data\\dataDir
# commitLog路径
storePathCommitLog=D:\\cass\\rocketmq-master\\data\\dataDir\\commitlog
# 消息队列存储路径
storePathConsumeQueue=D:\\cass\\rocketmq-master\\data\\dataDir\\consumequeue
# 消息索引存储路径
storePathIndex=D:\\cass\\rocketmq-master\\data\\dataDir\\index
# checkpoint文件路径
storeCheckpoint=D:\\cass\\rocketmq-master\\data\\dataDir\\checkpoint
# abort文件存储路径
abortFile=D:\\cass\\rocketmq-master\\data\\dataDir\\abort

找到 broker 项目,启动项目

发现又要配置环境变量,配置方式与NameSrv 相同

设置引用的配置文件:

-c D:\cass\rocketmq-master\conf\broker.conf


启动项目

 

1.4.4 快速测试



找到 example 项目下的 quickstart

修改启动类,配置 namesrv 服务地址

先启动 Producer 

 

 

再启动 Consumer 消费

 

 


推荐阅读
  • 深入解析轻量级数据库 SQL Server Express LocalDB
    本文详细介绍了 SQL Server Express LocalDB,这是一种轻量级的本地 T-SQL 数据库解决方案,特别适合开发环境使用。文章还探讨了 LocalDB 与其他轻量级数据库的对比,并提供了安装和连接 LocalDB 的步骤。 ... [详细]
  • 本文介绍了如何使用Workman框架构建一个功能全面的即时通讯系统,该系统不仅支持一对一聊天、群组聊天,还集成了视频会议和实时音视频通话功能,同时提供了红包发送等附加功能。 ... [详细]
  • 酷家乐 Serverless FaaS 产品实践探索
    本文探讨了酷家乐在 Serverless FaaS 领域的实践与经验,重点介绍了 FaaS 平台的构建、业务收益及未来发展方向。 ... [详细]
  • Cadence SPB 16.5 安装指南与注意事项
    本文提供了详细的 Cadence SPB 16.5 安装步骤,包括环境配置、安装过程中的关键步骤以及常见问题的解决方案。适合初次安装或遇到问题的技术人员参考。 ... [详细]
  • 本文档提供了详细的MySQL安装步骤,包括解压安装文件、选择安装类型、配置MySQL服务以及设置管理员密码等关键环节,帮助用户顺利完成MySQL的安装。 ... [详细]
  • 深入探讨Web服务器与动态语言的交互机制:CGI、FastCGI与PHP-FPM
    本文详细解析了Web服务器(如Apache、Nginx等)与动态语言(如PHP)之间通过CGI、FastCGI及PHP-FPM进行交互的具体过程,旨在帮助开发者更好地理解这些技术背后的原理。 ... [详细]
  • 本文旨在介绍一系列提升工作效率的浏览器插件和实用小工具,帮助用户在日常工作中更加便捷高效。内容由原作者授权发布。 ... [详细]
  • 使用 Docker 部署 MongoDB 并通过 IntelliJ IDEA 远程访问
    本文详细介绍了如何使用 Docker 部署 MongoDB,并通过 IntelliJ IDEA 实现远程连接的方法。包括 MongoDB 的基本配置、用户管理以及如何在 IDE 中配置连接。 ... [详细]
  • 深入解析 Zend Guard 4 功能与配置
    本文旨在通过图文并茂的方式详细介绍 Zend Guard 4 的核心功能及其配置方法,特别适合英文阅读能力有限的技术人员。文中不仅提供了详细的步骤说明,还附带了实际操作中的注意事项,帮助读者更好地理解和应用这一工具。 ... [详细]
  • 本文提供了解决在尝试重置MySQL root用户密码时遇到连接失败问题的方法,包括停止MySQL服务、以安全模式启动MySQL、手动更新用户表中的密码等步骤。 ... [详细]
  • 构建高性能Feed流系统的设计指南
    随着移动互联网的发展,Feed流系统成为了众多社交应用的核心组成部分。本文将深入探讨如何设计一个高效、稳定的Feed流系统,涵盖从基础架构到高级特性的各个方面。 ... [详细]
  • 本书《Pro Git》深入探讨了 Git 版本控制系统的核心概念与高级功能,旨在帮助开发者和团队有效管理代码变更。通过实例和最佳实践,读者将学习如何利用 Git 提升工作效率。 ... [详细]
  • 本文基于《Core Java Volume 2》的内容,深入探讨了网络编程中通过POST方法提交表单数据的技术细节,包括GET与POST方法的区别、POST提交的具体步骤及常见问题处理。 ... [详细]
  • 尤洋:夸父AI系统——大规模并行训练的深度学习解决方案
    自从AlexNet等模型在计算机视觉领域取得突破以来,深度学习技术迅速发展。近年来,随着BERT等大型模型的广泛应用,AI模型的规模持续扩大,对硬件提出了更高的要求。本文介绍了新加坡国立大学尤洋教授团队开发的夸父AI系统,旨在解决大规模模型训练中的并行计算挑战。 ... [详细]
  • CSS模块化命名 ... [详细]
author-avatar
hanhan2502883243
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有