RocketMQ的下载及安装以及历史和发展

这篇具有很好参考价值的文章主要介绍了RocketMQ的下载及安装以及历史和发展。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

RocketMQ历史及发展

        如果想要了解RocketMQ的历史,则需了解阿里巴巴中间件团队中的历史,2011年,Linkin(领英:全球知名的职场社交平台)推出Kafka消息引擎,阿里巴巴中间件团队在研究了Kafka的整体机制和架构设计之后,基于Kafka(Scala语言编写)的设计使用Java进行了完全重写并推出了MetaQ 1.0版本,主要是用于解决顺序消息和海量堆积的问题,由开源社区killme2008维护。本书重点不在此版本,具体见:https://github.com/killme2008/Metamorphosis
        2012年,阿里巴巴发现MetaQ原本基于Kafka的架构在阿里巴巴如此庞大的体系下很难进行水平扩展,于是对MetaQ进行了架构重组升级,开发出了MetaQ 2.0,同年阿里把Meta2.0从阿里内部开源出来,取名RocketMQ,为了命名上的规范以及版本上的延续,对外称为RocketMQ3.0。因为RocketMQ3只是RocketMQ的一个过渡版本,本书重点也不在此。
        2016年11月28日,阿里巴巴宣布将开源分布式消息中间件RocketMQ捐赠给Apache,成为Apache 孵化项目。在孵化期间,RocketMQ完成编码规约、分支模型、持续交付、发布规约等方面的产品规范化,同时RocketMQ3也升级为RocketMQ4。现在RocketMQ主要维护的是4.x的版本,也是大家使用得最多的版本,所以本书重点将围绕此版本进行详细的讲解,项目地址:https://github.com/apache/rocketmq/
        2015年,阿里基于RocketMQ开发了阿里云上的Aliware MQ,Aliware MQ(Message Queue)是RocketMQ的商业版本,是阿里云商用的专业消息中间件,是企业级互联网架构的核心产品,基于高可用分布式集群技术,搭建了包括发布订阅、消息轨迹、资源统计、定时(延时)、监控报警等一套完整的消息云服务。因为Aliware MQ是商业版本,本书也不对此产品进行讲述,产品地址:https://www.aliyun.com/product/rocketmq
        2021年,伴随众多企业全面上云以及云原生的兴起,RocketMQ也在github上发布5.0版本。目前来说还只是一个预览版,不过RocketMQ5的改动非常大,同时也明确了版本定位,RocketMQ 5.0定义为云原生的消息、事件、流的超融合平台。本书也将会根据目前所发布的版本进行针对性的讲述。

RocketMQ的下载及安装

下载

RocketMQ可以从官网下载,也可以从Github上获取,推荐从官网中获取
官网:http://rocketmq.apache.org/dowloading/releases/
Github:https://github.com/apache/rocketmq/
本书中将使用4.8.0的版本,从官网上获取的页面如下。
RocketMQ的下载及安装以及历史和发展
环境要求如下:

  • Windows/Linux 64位系统
  • JDK1.8(64位)
  • 源码安装需要安装Maven 3.2.x

安装

windows下的安装

下载

下载链接:https://archive.apache.org/dist/rocketmq/4.8.0/rocketmq-all-4.8.0-bin-release.zip
解压运行版本(Binary),确保已经安装好了JDK1.8
解压后的目录如下:
RocketMQ的下载及安装以及历史和发展

配置环境变量

变量名:ROCKETMQ_HOME
变量值:MQ解压路径\MQ文件夹名RocketMQ的下载及安装以及历史和发展

启动

在RocketMQ的架构中,都是需要先启动NameServer再启动Broker的。所以先启动NameServer。
- 启动NameServer
使用cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqnamesrv.cmd’,启动NameServer。成功后会弹出提示框,此框勿关闭。
RocketMQ的下载及安装以及历史和发展
- 启动Broker
使用cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true’,启动Broker。成功后会弹出提示框,此框勿关闭。
RocketMQ的下载及安装以及历史和发展

注意事项

- 弹出提示框‘错误: 找不到或无法加载主类 xxxxxx’的处理
打开‘MQ文件夹\bin’下的runbroker.cmd,然后将‘%CLASSPATH%’加上英文双引号。保存并重新执行start语句。
RocketMQ的下载及安装以及历史和发展
再次启动
RocketMQ的下载及安装以及历史和发展
- 内存不足的处理方式
RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,修改JVM内存大小。编辑‘MQ文件夹\bin’下的runbroker.cmd和runserver. cmd修改默认JVM大小(Linux上对应同名sh文件)
runbroker.cmd --broker的配置
runserver. cmd --nameServer的配置
例如:配置以下参数将RocketMQ的启动JVM的 堆空间内存控制在512m,新生代控制 在256m。元空间初始128m,最大320m。
RocketMQ的下载及安装以及历史和发展
- 修改RocketMQ的存储路径
rocketmq取的默认路径是user.home路径,也就是用户的根目录,一般存储放在跟路径下的 /store目录。
RocketMQ的下载及安装以及历史和发展
源码中可以得到验证,如下图:
RocketMQ的下载及安装以及历史和发展
所以这里会有一个问题,RocketMQ很容易导致C盘空间不够,在使用过程中,创建一个主题默认就是要创建1G的文件,很可能会导致出问题。
所以在windows上容易导致C盘空间吃满。
解决方式有两种:

  1. 修改源码,比如:全局替换user.home参数为mq.store,然后重新打包
  2. 使用源码方式启动,源码启动时通过参数设置指定存储位置

控制台插件

环境要求

运行前确保:已经有jdk1.8,Maven(打包需要安装Maven 3.2.x)

下载

老版本地址下载:https://codeload.github.com/apache/rocketmq-externals/zip/master
新版本地址:https://github.com/apache/rocketmq-dashboard
解压后如图(以下使用的是老版本,新版本参考老版本即可)

RocketMQ的下载及安装以及历史和发展

启动

后端管理界面是:rocketmq-console
下载完成之后,进入‘\rocketmq-console\src\main\resources’文件夹,打开‘application.properties’进行配置。
RocketMQ的下载及安装以及历史和发展

进入‘\rocketmq-externals\rocketmq-console’文件夹,执行‘mvn clean package -Dmaven.test.skip=true’,编译生成。
RocketMQ的下载及安装以及历史和发展

编译成功之后,cmd命令进入‘target’文件夹,执行‘java -jar rocketmq-console-ng-2.0.0.jar’,启动‘rocketmq-console-ng-2.0.0.jar’。

RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展
浏览器中输入‘127.0.0.1:8089’,成功后即可进行管理端查看。
RocketMQ的下载及安装以及历史和发展

控制台使用文档

- 运维页面

  • 你可以修改这个服务使用的namesrv的地址
  • 你可以修改这个服务是否使用VIPChannel(如果你的mq server版本小于3.5.8,请设置不使用)
    RocketMQ的下载及安装以及历史和发展
    - 驾驶舱
  • 查看broker的消息量(总量/5分钟图)
  • 查看单一主题的消息量(总量/趋势图)
    RocketMQ的下载及安装以及历史和发展
  • 集群
  • 集群的分布情况:cluster与broker关系、broker
  • 查看broker具体信息/运行信息
  • 查看broker配置信息
    RocketMQ的下载及安装以及历史和发展
    - 主题页面
  • 展示所有的主题,可以通过搜索框进行过滤
  • 筛选 普通/重试/死信 主题
  • 添加/更新主题
    clusterName 创建在哪几个cluster上
    brokerName 创建在哪几个broker上
    topicName 主题名
    writeQueueNums 写队列数量
    readQueueNums 读队列数量
    perm //2是写 4是读 6是读写
  • 状态 查询消息投递状态(投递到哪些broker/哪些queue/多少量等)
  • 路由 查看消息的路由(现在你发这个主题的消息会发往哪些broker,对应broker的queue信息)
  • CONSUMER管理(这个topic都被哪些group消费了,消费情况何如)
  • topic配置(查看变更当前的配置)
  • 发送消息(向这个主题发送一个测试消息)
  • 重置消费位点(分为在线和不在线两种情况,不过都需要检查重置是否成功)
    10.删除主题 (会删除掉所有broker以及namesrv上的主题配置和路由信息)
    RocketMQ的下载及安装以及历史和发展
    - 消费者页面
  • 展示所有的消费组,可以通过搜索框进行过滤
  • 刷新页面/每隔五秒定时刷新页面
  • 按照订阅组/数量/TPS/延迟 进行排序
  • 添加/更新消费组
    clusterName 创建在哪几个集群上
    brokerName 创建在哪几个broker上
    groupName 消费组名字
    consumeEnable //是否可以消费 FALSE的话将无法进行消费
    consumeBroadcastEnable //是否可以广播消费
    retryQueueNums //重试队列的大小
    brokerId //正常情况从哪消费
    whichBrokerWhenConsumeSlowly//出问题了从哪消费
  • 终端 在线的消费客户端查看,包括版本订阅信息和消费模式
  • 消费详情 对应消费组的消费明细查看,这个消费组订阅的所有Topic的消费情况,每个queue对应的消费client查看(包括Retry消息)
  • 配置 查看变更消费组的配置
  • 删除 在指定的broker上删除消费组
    RocketMQ的下载及安装以及历史和发展
    - 生产者页面

通过Topic和Group查询在线的消息生产者客户端
信息包含客户端主机 版本
RocketMQ的下载及安装以及历史和发展

- 消息查询页面

  • 根据Topic和时间区间查询 *由于数据量大 最多只会展示2000条,多的会被忽略
  • 根据Topic和Key进行查询
  • 最多只会展示64条
  • 根据消息主题和消息Id进行消息的查询
  • 消息详情可以展示这条消息的详细信息,查看消息对应到具体消费组的消费情况(如果异常,可以查看具体的异常信息)。可以向指定的消费组重发消息
    RocketMQ的下载及安装以及历史和发展
Linux下的安装
环境要求

64bit OS、64bit JDK 1.8+、4g+ free disk for Broker server

启动

在RocketMQ的架构中,都是需要先启动NameServer再启动Broker的。所以先启动NameServer。

  • 启动NameServer
    进入至‘MQ文件夹\bin’下,然后执行‘nohup sh mqnamesrv &’,启动NAMESERVER。
    查看日志的命令:tail -f ~/logs/rocketmqlogs/namesrv.log
    RocketMQ的下载及安装以及历史和发展
  • 启动Broker
    进入至‘MQ文件夹\bin’下,启动BROKER。
    修改配置文件增加外网地址(你启动加载哪个配置文件就修改哪个,比如修改broker.conf)
    brokerIP1=192.168.56.101
    启动命令如下:
    nohup sh mqbroker -c …/conf/broker.conf -n 192.168.56.101:9876 autoCreateTopicEnable=true &
    这样启动的服务器客户端可以自动创建主题。
    查看日志的命令:tail -f ~/logs/rocketmqlogs/broker.log
    RocketMQ的下载及安装以及历史和发展
注意事项

1.RocketMQ需要开通的端口:

  • rocketMQ自身占用有9876
  • 非vip通道端口:10911
  • vip通道端口:10909 (只针对producer 而且4.5以后已经默认不开启了)
    VIP通道其实就是多监听一个端口用于接受处理消息,因为默认端口通道可能很多在用,为了防止某些很重要的业务堵塞,就再开一个端口处理。这对于老版本的 RocketMQ 有消息接收队列的时候,作用可能大一点,对于目前的 RocketMQ 的设计,作用没那么大了。所以,这个默认就不开启了,留着只是为了兼容老版本。
    2.其他:
    记得Linux上修改文件权限:命令如下:chmod -R 777 /home/linux
RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,
修改JVM内存大小。(但是这个也仅仅是在测试环境中,RocketMQ在生产上最低要求
至少8G内存<官方推荐>才能确保RocketMQ的效果)
编辑runbroker.sh和runserver.sh修改默认JVM大小(windows上对应cmd文件)
vi runbroker.sh           --broker的配置
vi runserver.sh            --nameServer的配置
JAVA_OPT="${JAVA_OPT} -server -Xms1024m -Xmx1024m -Xmn512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
控制台插件

因为可视化插件是基于java打包的,所以启动过程和windows上是一样,修改端口号和打包可参考之前控制台插件
执行‘nohup java -jar rocketmq-console-ng-1.0.1.jar &’,启动‘rocketmq-console-ng-1.0.1.jar’。

RocketMQ源码安装与调试
下载

http://rocketmq.apache.org/dowloading/releases/
RocketMQ的下载及安装以及历史和发展

环境要求
  • 64位系统
  • JDK1.8(64位)
  • Maven 3.2.x
IntelliJ IDEA导入

RocketMQ的下载及安装以及历史和发展RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展
导入后执行Maven命令install
mvn install -Dmaven.test.skip=true
RocketMQ的下载及安装以及历史和发展
验证下没问题

启动RocketMQ源码
  • 启动NameServer

RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展

如上图,中Value值是一个Rocket运行主目录(一般这个目录新建)
在Rocket运行主目录中创建conf、logs、store三个文件夹
然后从源码目录中distribution目录下的中将broker.conf、logback_broker.xml、logback_namesrv.xml复制到conf目录中

RocketMQ的下载及安装以及历史和发展

RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展

  • 启动Broker
    在broker模块找到broker模块,同时找到启动类BrokerStartup.java

RocketMQ的下载及安装以及历史和发展
需要修改配置文件broker.conf

RocketMQ的下载及安装以及历史和发展
RocketMQ的下载及安装以及历史和发展文章来源地址https://www.toymoban.com/news/detail-456311.html

  • 配置如下:
    #nameServer
    namesrvAddr=127.0.0.1:9876
    autoCreateTopicEnable = true
    storePathRootDir = F:\RocketMQ\store
    #commitLog存储路径
    storePathCommitLog = F:\RocketMQ\store\commitlog
    #消费队列存储路径
    storePathConsumeQueue =F:\RocketMQ\store\consumequeue
    #消息索引存储路径
    storePathindex = F:\RocketMQ\store\index
    #checkpoint文件存储路径
    storeCheckpoint = F:\RocketMQ\store\checkpoint
    #abort文件存储路径
    abortFile = F:\RocketMQ\store\abort
  • 配置环境变量
    RocketMQ的下载及安装以及历史和发展
    RocketMQ的下载及安装以及历史和发展
  • 最后检查下数据文件
    RocketMQ的下载及安装以及历史和发展
  • 启动的日志文件目录
    启动过程中任何的日志信息已经写入
    RocketMQ的下载及安装以及历史和发展
    RocketMQ的下载及安装以及历史和发展

到了这里,关于RocketMQ的下载及安装以及历史和发展的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MongoDB Compass当前版本及历史版本下载安装

    官网 https://www.mongodb.com/try/download/compass 官网下载一般只能下载最新版本。 github https://github.com/mongodb-js/compass MongoDB Compass MongoDB 1.9.12 MongoDB 2.6.11 Community

    2024年01月19日
    浏览(39)
  • Linux系统下消息中间件RocketMQ下载、安装、搭建、配置、控制台rocketmq-dashboard的安装保姆级教程 rocketmq ui

    这里给出我使用的 RocketMQ 版本(5.1.3)、RocketMQ-Dashboard 版本的百度网盘链接: 链接:https://pan.baidu.com/s/1HaKBBDGWZ0WKLGgVwIG9pw 提取码:1234 1、注意:有两种资源下载:Source表示源码、Binary是二进制包(我们下载这个):二进制包是已经编译完成后可以直接运行的,源码包是需要

    2024年02月12日
    浏览(62)
  • MacBook 苹果笔记本 下载Xcode历史版本并安装!

    旧版的Mac系统在appstore上下载xcode时,会遇到版本过低但情况,无法安装。 之前有在网上看到其他博主有分享如何下载历史版本的Xcode,如果系统是mojave,在商城可能下载不了,之前别人有分享,但是不够具体,今天我分享一下我下载Xcode的具体的步骤: 先查看自己电脑的版本

    2024年02月04日
    浏览(47)
  • RocketMQ的下载与安装(全网最细保姆级别教学)

    下载地址 下载地址 推荐使用官网下载  Windows/Linux 64位系统  JDK1.8(64位)  源码安装需要安装Maven 3.2.x 要是需要GPT Plus账号的小伙伴可以联系我~ 下载地址 变量名:ROCKETMQ_HOME 变量值:MQ解压路径MQ文件夹名(bin目录的上一级即可) 首先启动NameServer 在bin目录下执行cmd命令呼

    2024年02月12日
    浏览(49)
  • 数据仓库发展历史

    数据仓库是企业中用于存储、整合和分析数据的关键组件。随着时间的推移,数据仓库经历了三代演化: 从需求驱动到平台化、从平台化到智能(AI)化 第一代数据仓库演化:需求驱动的分层架构 第一代数据仓库的核心思想是根据需求分析和业务模型构建分层架构,使用工

    2024年02月15日
    浏览(71)
  • StableDiffusion模型发展历史

    参考资料: 相应的github和huggingface LDM [github] StableDiffusion v1.1 ~ v1.4 [github] [huggingface] StableDiffusion v1.5 [huggingface] [github] StableDiffusion v2 v2.1 [github] [huggingface] 首先说一下,这篇文章的目的是让你清晰地了解StableDffusion这个模型的发展脉络,由于目前开源AIGC模型基本上都是基于SD的

    2024年02月13日
    浏览(59)
  • docker发展历史

    2008年,Solomon Hykes 和他的朋友 Kamel Founadi、Sebastien Pahl 共同创立了一家名为 DotCloud 的公司,目标是利用一种叫做容器的技术来创建他们称作是“大规模的创新工具”:任何人都可以使用的编程工具。 2010年,dotCloud获得了创业孵化器Y Combinator的支持,并开始吸引到一些真正的投

    2024年02月13日
    浏览(40)
  • 手机的发展历史

    目录 一.人类的通信方式变化 二.手机对人类通信的影响 三.手机的发展过程 四.手机对现代人的影响         人类通信方式的变化是一个非常广泛和复杂的话题,随着技术的进步和社会的发展,人类通信方式发生了许多重大的变化。下面是一些主要的变化趋势:       

    2024年02月12日
    浏览(43)
  • Excel的发展历史

           1982年,Microsoft推出了它的第一款电子制表软件──Multiplan,并在CP/M系统上大获成功,但在MS-DOS系统上,Multiplan败给了Lotus 1-2-3。这个事件促使了Excel的诞生,正如Excel研发代号Doug Klunder:做Lotus 1-2-3能做的,并且做的更好。1985年,第一款Excel诞生,它只用于Mac系统;

    2024年02月13日
    浏览(42)
  • Hadoop发展历史

    1)Hadoop是一个由Apache基金会所开发的 分布式系统基础架构 2)主要解决,海量数据的 存储 和海量数据的 分析计算 问题。 3)广义上来说,Hadoop通常是指一个更广泛的概念—— Hadoop生态圈 。 1)Hadoop创始人 Doug Cutting ,为 了实 现与Google类似的全文搜索功能,他在Lucene框架基

    2024年02月11日
    浏览(77)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包