热门标签 | 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 消费

 

 


推荐阅读
  • 本文介绍了 Java 中 io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods.evfiltSock() 方法的使用及其代码示例,帮助开发者更好地理解和应用该方法。 ... [详细]
  • 零拷贝技术是提高I/O性能的重要手段,常用于Java NIO、Netty、Kafka等框架中。本文将详细解析零拷贝技术的原理及其应用。 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 本文详细介绍了一种利用 ESP8266 01S 模块构建 Web 服务器的成功实践方案。通过具体的代码示例和详细的步骤说明,帮助读者快速掌握该模块的使用方法。在疫情期间,作者重新审视并研究了这一未被充分利用的模块,最终成功实现了 Web 服务器的功能。本文不仅提供了完整的代码实现,还涵盖了调试过程中遇到的常见问题及其解决方法,为初学者提供了宝贵的参考。 ... [详细]
  • 本文介绍了如何利用 Delphi 中的 IdTCPServer 和 IdTCPClient 控件实现高效的文件传输。这些控件在默认情况下采用阻塞模式,并且服务器端已经集成了多线程处理,能够支持任意大小的文件传输,无需担心数据包大小的限制。与传统的 ClientSocket 相比,Indy 控件提供了更为简洁和可靠的解决方案,特别适用于开发高性能的网络文件传输应用程序。 ... [详细]
  • 三角测量计算三维坐标的代码_双目三维重建——层次化重建思考
    双目三维重建——层次化重建思考FesianXu2020.7.22atANTFINANCIALintern前言本文是笔者阅读[1]第10章内容的笔记,本文从宏观的角度阐 ... [详细]
  • C语言中全部可用的数学函数有哪些?2.longlabs(longn);求长整型数的绝对值。3.doublefabs(doublex);求实数的绝对值。4.doublefloor(d ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 本文介绍了如何使用Python的Paramiko库批量更新多台服务器的登录密码。通过示例代码展示了具体实现方法,确保了操作的高效性和安全性。Paramiko库提供了强大的SSH2协议支持,使得远程服务器管理变得更加便捷。此外,文章还详细说明了代码的各个部分,帮助读者更好地理解和应用这一技术。 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • Java Socket 关键参数详解与优化建议
    Java Socket 的 API 虽然被广泛使用,但其关键参数的用途却鲜为人知。本文详细解析了 Java Socket 中的重要参数,如 backlog 参数,它用于控制服务器等待连接请求的队列长度。此外,还探讨了其他参数如 SO_TIMEOUT、SO_REUSEADDR 等的配置方法及其对性能的影响,并提供了优化建议,帮助开发者提升网络通信的稳定性和效率。 ... [详细]
  • 在Cisco IOS XR系统中,存在提供服务的服务器和使用这些服务的客户端。本文深入探讨了进程与线程状态转换机制,分析了其在系统性能优化中的关键作用,并提出了改进措施,以提高系统的响应速度和资源利用率。通过详细研究状态转换的各个环节,本文为开发人员和系统管理员提供了实用的指导,旨在提升整体系统效率和稳定性。 ... [详细]
  • Python 伦理黑客技术:深入探讨后门攻击(第三部分)
    在《Python 伦理黑客技术:深入探讨后门攻击(第三部分)》中,作者详细分析了后门攻击中的Socket问题。由于TCP协议基于流,难以确定消息批次的结束点,这给后门攻击的实现带来了挑战。为了解决这一问题,文章提出了一系列有效的技术方案,包括使用特定的分隔符和长度前缀,以确保数据包的准确传输和解析。这些方法不仅提高了攻击的隐蔽性和可靠性,还为安全研究人员提供了宝贵的参考。 ... [详细]
  • 优化后的标题:深入探讨网关安全:将微服务升级为OAuth2资源服务器的最佳实践
    本文深入探讨了如何将微服务升级为OAuth2资源服务器,以订单服务为例,详细介绍了在POM文件中添加 `spring-cloud-starter-oauth2` 依赖,并配置Spring Security以实现对微服务的保护。通过这一过程,不仅增强了系统的安全性,还提高了资源访问的可控性和灵活性。文章还讨论了最佳实践,包括如何配置OAuth2客户端和资源服务器,以及如何处理常见的安全问题和错误。 ... [详细]
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社区 版权所有