您的位置 首页 > 数码极客

linux如何查看mq

前言

本来是想写RocketMQ系列博文第一篇RocketMQ简介,大致内容包括介绍什么是RocketMQ以及教大家如何安装RocketMQ的。但是呢?有网友说,学习RocketMQ官网特别难。

博主本着天下没有难学的技术,带领大家一起手撕RocketMQ。对于技术人员来说,官网才是第一手资料,解决所有棘手问题的起点,也是终点。

学习任何一项技术的通用步骤,三个W,解决所有问题:

1、首先,问What,了解学习这项技术是干嘛的,能够解决现实项目中的什么问题?

2、其次,问How,怎么做,如何下载(找到github),安装,编写简单的HelloWorld,进行实践

3、最终,问Why,为什么要这么做,原理是什么,架构是什么样的?

下面我们就用上面的3个W,手撕RocketMQ官网。

概述,什么是RocketMQ

我们找到RocketMQ官网地址:。

首先,介绍了设计RocketMQ的动机以及原因。阿里初期的消息队列使用的ActiveMQ,随着使用了越来越来的队列和虚拟主题,遇到了ActiveMQ的IO瓶颈。通过节流,断路器或降级等方案,尝试解决问题,但是效果不好。于是研究其他替代方案,但是kafka在低延迟和高可靠性方面不能满足阿里的业务需求,于是设计了RocketMQ。

官网对RocketMQ,ActiveMQ和Kafka三款MQ产品进行了简单的对比,内容如下:

RocketMQ vs. ActiveMQ vs. Kafka

下表展示了RocketMQ,ActiveMQ和Kafka(Apache最流行的消息传递解决方案)之间的比较:



如何下载及安装

在快速开启中,RocketMQ为我们提供了中文的学习文档,

学习RocketMQ需要5个先前条件。

1.推荐使用64位操作系统,建议使用Linux / Unix / Mac;(Windows用户请参见下面的指南)
2.64位JDK 1.8+;
3.Maven 3.2.x;
4.Git;
5.适用于Broker服务器的4g +可用磁盘
我们既可以通过下载源码编译的方式,进行构建,部署,也可以从下载链接中直接下载已经构建好的工具包进行部署。

unzip rocke
cd rocke
mvn -Prelease-all -DskipTests clean install -U
cd distribution/targe

Linux
启动 Name Server

1.启动NameServer

nohup sh bin/mqnamesrv &

2.查看启动日志

tail -f ~/logs/rocketmqlog
The Name Server boot success...

启动 Broker

1.启动Broker

nohup sh bin/mqbroker -n localhost:9876 &

2.查看启动日志

tail -f ~/logs/rocketmqlog
The broker[%s, 172.30.30.233:10911] boot success...

测试RocketMQ发送和接收消息
首先要设置环境变量NAMESRV_ADDR

1.设置环境变量

export NAMESRV_ADDR=localhost:9876

2.使用安装包的Demo发送消息

sh bin org.a
SendResult [sendStatus=SEND_OK, msgId= ...

3.接收消息

sh bin org.a
ConsumeMessageThread_%d Receive New Messages: [MessageExt...

关闭服务器

1.关闭Broker

sh bin/mqshutdown broker
The mqbroker(36695) is running...
Send shutdown request to mqbroker(36695) OK

2.关闭NameServer

sh bin/mqshutdown namesrv
The mqnamesrv(36664) is running...
Send shutdown request to mqnamesrv(36664) OK

Windows
下载最新的二进制版本。并将zip文件解压缩到本地磁盘中。如:D:\rocketmq

添加环境变量

ROCKETMQ_HOME="D:\rocketmq" NAMESRV_ADDR="localhost:9876"

启动 Name Server
设置正确的环境变量后,切换到rocketmq的解压目录,直接运行

.\bin\mqname

启动 Broker
Open new powershell window, after set the correct environment variable. then change directory to rocketmq type and run:

.\bin\mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true
测试RocketMQ发送和接收消息
确保已经正确配置环境变量,切到rocketmq目录并运行。

1、发送消息 .\bin\ org.a 2、接收消息 .\bin\ org.a

关闭服务器
通常,直接关闭命令行窗口即可。(请勿在生产环境中执行此操作)

注意

问题描述:

RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,修改JVM内存大小

编辑runbroker.sh和run修改默认JVM大小 vi runbroker.sh vi run

参考设置:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

原理是什么?
RocketMQ中文文档中包含了所有我们需要学习的内容,包括RocketMQ概念与特性,架构设计,RocketMQ最常见各种消息案例、最佳实践、集群部署。中文内容,相信大家只要肯付出时间,不断实践。RocketMQ就是你永远的技术栈。

总结
如何学习一门技术的技巧,你GET到了吗?

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“linux如何查看mq”边界阅读