Mac和Linux中Apache RocketMQ的安装和使用(亲测有效,不服来战)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 一、项目需要用到Apache RocketMQ Apache RocketMQ™ is an open source distributed messaging and streaming data platform. 这是阿里开源的一个消息中间件框架。

一、项目需要用到Apache RocketMQ
Apache RocketMQ™ is an open source distributed messaging and streaming data platform.
这是阿里开源的一个消息中间件框架。
官网:官网

二、下面来快速开始
官方的快速开始文档

三、系统要求
The following softwares are assumed installed:
64bit OS, Linux/Unix/Mac is recommended;
64bit JDK 1.8+;
Maven 3.2.x
Git

四、先要去下载安装包
安装包网址

五、点击这个下载
这里写图片描述

六、解压

unzip rocketmq-all-4.2.0-source-release.zip

七、进入到项目目录下

 cd rocketmq-all-4.2.0/

八、执行安装的操作

~/aliSpace/recketmq/rocketmq-all-4.2.014:20:14
$ mvn -Prelease-all -DskipTests clean install -U
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Detecting the operating system and CPU architecture
[INFO] ------------------------------------------------------------------------
[INFO] os.detected.name: osx
[INFO] os.detected.arch: x86_64
[INFO] os.detected.classifier: osx-x86_64
......
[INFO] rocketmq-distribution 4.2.0 ........................ SUCCESS [  4.717 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 28.456 s
[INFO] Finished at: 2018-04-09T14:21:40+08:00
[INFO] Final Memory: 85M/1608M
[INFO] ------------------------------------------------------------------------

九、安装完成后是这个样子

~/aliSpace/recketmq/rocketmq-all-4.2.014:21:41
$ ls
1                        client                   openmessaging
BUILDING                 common                   pom.xml
CONTRIBUTING.md          dev                      remoting
DEPENDENCIES             distribution             srvutil
LICENSE                  example                  store
NOTICE                   filter                   style
PULL_REQUEST_TEMPLATE.md filtersrv                target
README.md                logappender              test
broker                   namesrv                  tools

十、进入到启动文件所在的目录

~/aliSpace/recketmq/rocketmq-all-4.2.014:56:26
$ cd distribution/target/apache-rocketmq
 ~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq14:57:34
$ ls
LICENSE   NOTICE    README.md benchmark bin       conf      lib

十一、启动服务器,查看输出日志

启动服务器
~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:00:25
$ nohup sh bin/mqnamesrv &
查看启动日志
~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:00:44
$ tail -f ~/logs/rocketmqlogs/namesrv.log
2018-04-09 15:00:37 INFO main - tls.server.trustCertPath = null
2018-04-09 15:00:37 INFO main - tls.client.keyPath = null
2018-04-09 15:00:37 INFO main - tls.client.keyPassword = null
2018-04-09 15:00:37 INFO main - tls.client.certPath = null
2018-04-09 15:00:37 INFO main - tls.client.authServer = false
2018-04-09 15:00:37 INFO main - tls.client.trustCertPath = null
2018-04-09 15:00:37 INFO main - Using OpenSSL provider
2018-04-09 15:00:37 INFO main - SSLContext created for server
2018-04-09 15:00:37 INFO NettyEventExecutor - NettyEventExecutor service started
2018-04-09 15:00:37 INFO main - The Name Server boot success. serializeType=JSON
2018-04-09 15:01:37 INFO NSScheduledThread1 - --------------------------------------------------------
2018-04-09 15:01:37 INFO NSScheduledThread1 - configTable SIZE: 0

十二、启动经纪人,查看经纪人的启动日志

启动经纪人人
~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:02:57
$ nohup sh bin/mqbroker -n localhost:9876 &
[1] 2196
appending output to nohup.out     
查看经纪人的启动日志
~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:03:15
$ tail -f ~/logs/rocketmqlogs/broker.log
2018-04-09 15:03:21 INFO main - load /Users/wangdong/store/config/consumerFilter.json OK
2018-04-09 15:03:21 INFO main - load /Users/wangdong/store/config/delayOffset.json OK
2018-04-09 15:03:21 INFO main - Set user specified name server address: localhost:9876
2018-04-09 15:03:21 INFO PullRequestHoldService - PullRequestHoldService service started
2018-04-09 15:03:21 INFO main - register broker to name server localhost:9876 OK
2018-04-09 15:03:21 INFO main - The broker[wdMac.local, 192.168.33.204:10911] boot success. serializeType=JSON and name server is localhost:9876

十三、发送或者接收消息
Before sending/receiving messages, we need to tell clients the location of name servers. RocketMQ provides multiple ways to achieve this. For simplicity, we use environment variable NAMESRV_ADDR
译:在发送/接收消息前,我们需要告诉客户端:消息服务器的地址:端口(本地的话可以用localhost:端口)。RocketMQ提供多种方式来实现它。
1.下面我们以命令行设置NAMESRV_ADDR的方式来实现它。

注意需要进入到mq目录下:

~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:17:31
$ export NAMESRV_ADDR=localhost:9876

2.发送一条消息

~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:26:44
$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
 SendResult [sendStatus=SEND_OK, msgId= ...

3.接收消息

~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:26:44
$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
 ConsumeMessageThread_%d Receive New Messages: [MessageExt...

十四、关闭服务器和经纪人

关闭服务器
~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:25:25
$ sh bin/mqshutdown namesrv
The mqnamesrv(2083) is running...
Send shutdown request to mqnamesrv(2083) OK
关闭经纪人
~/aliSpace/recketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq ⌚ 15:29:53
$ sh bin/mqshutdown broker
The mqbroker(2207) is running...
Send shutdown request to mqbroker(2207) OK

好了,一个简单的开始就结束了

相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
2月前
|
前端开发 安全 测试技术
Postman Mac 版安装终极指南:从下载到流畅运行,一步到位
Postman 是 API 开发与测试的高效工具,支持各类 HTTP 请求调试与团队协作。本文详解 Mac 版下载、安装步骤,助你快速上手。同时推荐一体化 API 协作平台 Apifox,集文档、调试、测试于一体,提升开发效率与团队协同能力。
|
4月前
|
物联网 Linux 开发者
快速部署自己私有MQTT-Broker-下载安装到运行不到一分钟,快速简单且易于集成到自己项目中
本文给物联网开发的朋友推荐的是GMQT,让物联网开发者快速拥有合适自己的MQTT-Broker,本文从下载程序到安装部署手把手教大家安装用上私有化MQTT服务器。
1211 5
|
5月前
|
iOS开发 MacOS 索引
在不受支持的 Mac 上安装 macOS Tahoe 26
在不受支持的 Mac 上安装 macOS Tahoe 26
356 0
在不受支持的 Mac 上安装 macOS Tahoe 26
|
7月前
|
关系型数据库 MySQL Linux
查看Linux、Apache、MySQL、PHP版本的技巧
以上就是查看Linux、Apache、MySQL、PHP版本信息的方法。希望这些信息能帮助你更好地理解和使用你的LAMP技术栈。
351 17
|
8月前
|
Ubuntu Linux Shell
Ubuntu gnome WhiteSur-gtk-theme类mac主题正确安装和卸载方式
通过这个过程,用户不仅可以定制自己的桌面外观,还可以学习到更多关于 Linux 系统管理的知识,从而更好地掌握系统配置和主题管理的技巧。
1078 12
|
8月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
开发工具 git 开发者
「Mac畅玩鸿蒙与硬件3」鸿蒙开发环境配置篇3 - DevEco Studio插件安装与配置
本篇将专注于如何在 DevEco Studio 中安装和配置必要的插件,以增强开发功能和提升效率。通过正确配置插件,开发流程能够得到简化,开发体验也会更加顺畅。
454 1
「Mac畅玩鸿蒙与硬件3」鸿蒙开发环境配置篇3 - DevEco Studio插件安装与配置
|
开发工具 iOS开发 开发者
「Mac畅玩鸿蒙与硬件2」鸿蒙开发环境配置篇2 - 在Mac上安装DevEco Studio
本篇将专注于如何在 Mac 上安装鸿蒙开发工具 DevEco Studio,确保开发环境能够顺利搭建。完成安装后,可以正式开始鸿蒙应用的开发工作。
804 1
「Mac畅玩鸿蒙与硬件2」鸿蒙开发环境配置篇2 - 在Mac上安装DevEco Studio
|
NoSQL Shell MongoDB
Mac OSX 平台安装 MongoDB
10月更文挑战第11天
273 4

热门文章

最新文章