• 第二章:02_单机版与控制台的安装和启动


    一、RocketMQ单机安装与启动

    1、准备工作

    软硬件需求

    • 系统要求是64位的,JDK要求是1.8及其以上版本的。
    • 配置 JDK 环境变量

    下载RocketMQ安装包

    将下载的安装包上传到Linux并解压。

    2、修改初始内存

    配置nameserver启动空间大小,修改runserver.sh

    如果你的电脑内存大于8G的话,可以跳过不用配置,如果不希望占用太大的内存,可以配置。 打开mq下面的runserver.sh

    使用vim命令打开bin/runserver.sh文件。现将这些值修改为如下:

    配置参数:

    JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
    

    配置broker启动空间大小,修改runbroker.sh

    如果你的电脑内存大于8G的话,可以跳过不用配置,如果不希望占用太大的内存,可以配置。 打开mq下面的runbroker.sh

    使用vim命令打开bin/runbroker.sh文件。现将这些值修改为如下:

    将图中的参数改成

    JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m"
    

    相关参数介绍:

    1. -Xmx4g 初始堆大小 4g
    2. -Xms4g 最大堆大小 4g
    3. -Xmn512m 年轻代大小(1.4 or lator)整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。
    4. 持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8

    3、启动

    启动顺序:先启动nameserver,再启动broker

    启动NameServer

    进入rocketMq目录执行下面命令启动nameserver

    1. # nohup用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
    2. # &:让命令在后台执行,终端退出后命令仍旧执行
    3. nohup sh bin/mqnamesrv & 
    4. tail -f ~/logs/rocketmqlogs/namesrv.log

    启动broker

    进入rocketMq目录执行下面命令启动broker

    1. # nohup用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
    2. # &:让命令在后台执行,终端退出后命令仍旧执行。
    3. nohup sh bin/mqbroker -n localhost:9876 & 
    4. tail -f ~/logs/rocketmqlogs/broker.log

    4、发送/接收消息测试

    发送消息

    1. export NAMESRV_ADDR=localhost:9876
    2. sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

    接收消息

    sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
    

    5、关闭Server

    关闭顺序:先关闭broker,再关闭nameserver

    无论是关闭name server还是broker,都是使用bin/mqshutdown命令。

    1. [root@mqOS rocketmq]# sh bin/mqshutdown broker
    2. The mqbroker(1740) is running... 
    3. Send shutdown request to mqbroker(1740) OK 
    4. [root@mqOS rocketmq]# sh bin/mqshutdown namesrv 
    5. The mqnamesrv(1692) is running... 
    6. Send shutdown request to mqnamesrv(1692) OK 
    7. [2]+ 退出 143 nohup sh bin/mqbroker -n localhost:9876

    二、控制台的安装与启动

    RocketMQ有一个可视化的dashboard,通过该控制台可以直观的查看到很多数据。

    1、下载

    下载地址:https://github.com/apache/rocketmq-externals/releases

    2、修改配置

    修改其src/main/resources中的application.properties配置文件。

    • 原来的端口号为8080,修改为一个不常用的
    • 指定RocketMQ的name server地址(使用ip或者host)

    3、添加依赖

    在解压目录rocketmq-console的pom.xml中添加如下JAXB依赖。

    JAXB,Java Architechture for Xml Binding,用于XML绑定的Java技术,是一个业界标准,是一 项可以根据XML Schema生成Java类的技术。

    1. <dependency>
    2.         <groupId>javax.xml.bind</groupId>
    3.         <artifactId>jaxb-api</artifactId>
    4.         <version>2.3.0</version>
    5.     </dependency>
    6.     <dependency>
    7.         <groupId>com.sun.xml.bind</groupId>
    8.         <artifactId>jaxb-impl</artifactId>
    9.         <version>2.3.0</version>
    10.     </dependency>
    11.     <dependency>
    12.         <groupId>com.sun.xml.bind</groupId>
    13.         <artifactId>jaxb-core</artifactId>
    14.         <version>2.3.0</version>
    15.     </dependency>
    16.     <dependency>
    17.         <groupId>javax.activation</groupId>
    18.         <artifactId>activation</artifactId>
    19.         <version>1.1.1</version>
    20.     </dependency>

    4、打包

    在rocketmq-console目录下运行maven的打包命令。

    5、启动

    6、访问

  • 相关阅读:
    Redis-实战篇-实现商铺缓存与数据库的双写一致(超时剔除和主动更新)
    啊哈C语言 第8章 游戏时间到了(第29讲)
    代码坏味道与重构之神秘命名
    高压流变仪用TESCOM ER5000压力控制系统的国产化替代方案
    大二学生基于Html+Css+javascript的网页制作——动漫设计公司响应式网站模板 (10个页面)
    解析短视频美颜SDK:技术原理与应用
    什么是IMAP?
    C#自定义配置文件(一)
    Docker-微服务项目部署
    STM32F103 CubeMX 使用USB生成鼠标设备
  • 原文地址:https://blog.csdn.net/niujifei/article/details/125539459