MQ安装部署

最新版本下载:http://rocketmq.apache.org/release_notes

修改配置

vi conf/broker.conf

添加brokerIP1

brokerIP1=192.168.0.1

brokerIP1:配置broker所在服务器的ip地址,以便Name Server连接

修改 runserver.sh 和 runbroker.sh

  • runserver.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn125m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
  • runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn125m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

运行Name Server

nohup sh bin/mqnamesrv &

查看运行日志:tail -f ~/logs/rocketmqlogs/namesrv.log

运行Broker

nohup sh bin/mqbroker -n localhost:9876 -c conf/broker.conf &

通过-c参数指定配置文件

查看运行日志:tail -f ~/logs/rocketmqlogs/broker.log

停止服务的方式

sh bin/mqshutdown broker
sh bin/mqshutdown namesrv

安装可视化管理界面

  • 下载
https://github.com/apache/rocketmq-externals
  • 编译
cd rocketmq-console
mvn clean package -Dmaven.test.skip=true
  • 运行
cd target
nohup java -jar \
-Drocketmq.config.namesrvAddr=localhost:9876 \
-Drocketmq.config.isVIPChannel=false \
rocketmq-console-ng-1.0.1.jar &
  • 访问
http://localhost:8080/

常见异常处理

MQClientException: No route info of this topic, TopicTest1

异常说明

在客户端的Producer运行起来准备发送消息时抛异常为 “ No route info of this topic ” 异常产生的原因可能是:

  1. Broker 禁止自动创建 Topic,且用户没有通过手工方式创建 Topic

  2. Broker 没有正确连接到 Name Server

  3. Producer 没有正确连接到 Name Server

解决办法

排查1:Broker禁止自动创建Topic,且用户没有通过手工方式创建 Topic

可以在rocketmq所在目录下执行 " sh bin/mqbroker -m " 来查看 broker 的配置参数

排查2:Broker 没有正确连接到 Name Server

通过查看broker的日志 tail -f ~/logs/rocketmqlogs/broker.log 看看有没有错误信息

排查3:Producer 没有正确连接到 Name Server

检查程序连接Name Server的地址有没有错

如果在云服务器上,检查安全组的配置9876端口有没有开发

看看有没有打开防火墙,有的话设置防火墙开放9876端口

RemotingTooMuchRequestException: sendDefaultImpl call timeout

异常说明

  • 在客户端的 Producer 运行起来准备发送消息时抛异常如下

  • 通常因为Name Server连接不上Broker

解决办法

排查1:Broker禁止自动创建Topic,且用户没有通过手工方式创建 Topic

  • 可以在rocketmq所在目录下执行 " sh bin/mqbroker -m " 来查看 broker 的配置参数

  • autoCreateTopicEnable=true 证明是没有问题的

排查2:Broker 没有正确连接到 Name Server

通过查看broker的日志 tail -f ~/logs/rocketmqlogs/broker.log 看看有没有错误信息

排查3:Producer 没有正确连接到 Name Server

检查程序连接Name Server的地址有没有错

如果在云服务器上,检查安全组的配置9876端口有没有开发

看看有没有打开防火墙,有的话设置防火墙开放9876端口

RemotingTooMuchRequestException: sendDefaultImpl call timeout

异常说明

  • 在客户端的 Producer 运行起来准备发送消息时抛异常如下

  • 通常因为Name Server连接不上Broker

解决办法

检查 rocketmq-console 的集群页签,broker 的地址是否正确

broker地址的配置方式请参考 安装部署 中提到的步骤:

  1. 修改broker.conf的配置,添加 brokerIP1 参数

  2. 启动broker时加上 -c 参数指定配置文件

消费/查看不了死信队列topic的消息

异常说明

死信队列默认的perm值为2没有查看权限

解决办法

在控制台把队列的perm改为6就可以了

perm为2会导致代码无法消费dlq队列的

RocketMQ消息队列部署与可视化界面安装的更多相关文章

  1. Apache RocketMQ 消息队列部署与可视化界面安装

    一.介绍 Apache RocketMQ是一个分布式.队列模型的消息中间件,具有低延迟.高性能和高可靠.万亿级容量和灵活的可扩展性.核心组件由四部分组成:Name Servers,Brokers,Pr ...

  2. RocketMQ 消息队列单机部署及使用

    转载请注明来源:http://blog.csdn.net/loongshawn/article/details/51086876 相关文章: <RocketMQ 消息队列单机部署及使用> ...

  3. RocketMq消息队列使用

    最近在看消息队列框架 ,alibaba的RocketMQ单机支持1万以上的持久化队列,支持诸多特性, 目前RocketMQ在阿里集团被广泛应用在订单,交易,充值,流计算,消息推送,日志流式处理,bin ...

  4. .Net轻松处理亿级数据--clickhouse及可视化界面安装介绍

    该篇内容由个人博客点击跳转同步更新!转载请注明出处! 前言 我是在17年就听说过Clickhouse,那时还未接触过亿数据的运算,那时我在的小公司对于千万数据的解决方案还停留在分库分表,最好的也是使用 ...

  5. kafka分布式消息队列介绍以及集群安装

    简介 首先简单说下对kafka的理解: 1.kafka是一个分布式的消息缓存系统: 2.kafka集群中的服务器节点都被称作broker 3.kafka的客户端分为:一是producer(消息生产者) ...

  6. RabbitMQ消息队列之一:RabbitMQ的环境安装及配置

    RabbitMQ简介: MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们 ...

  7. RocketMQ—消息队列入门

    消息队列功能介绍 字面上说的消息队列是数据结构中"先进先出"的一种数据结构,但是如果要求消除单点故障,保证消息传输可靠性,应对大流量的冲击,对消息队列的要求就很高了.现在互联网的& ...

  8. RocketMQ消息队列安装

    一.官方安装文档 http://rocketmq.apache.org/docs/quick-start/ 下载地址 https://github.com/apache/rocketmq/releas ...

  9. Ubuntu Linux TinySerial串口调试助手 可视化界面 安装使用

    ubuntu Linux下串口调试助手使用 Tiny Serial为一个开源项目,欢迎大家使用,基于Qt开发的串口调试助手,有一般串口助手的基本功能,更多功能正在完善. Github地址:https: ...

随机推荐

  1. kick start 2019 round D T3题解

    ---恢复内容开始--- 题目大意:共有N个房子,每个房子都有各自的坐标X[i],占据每个房子需要一定花费C[i].现在需要选择K个房子作为仓库,1个房子作为商店(与题目不同,概念一样),由于仓库到房 ...

  2. 【Nginx】简介以及安装、启动、关闭

    一.概述 二.Nginx基本安装 2.1 Windows安装Nginx Nginx目录结构 2.2 Linux安装Nginx 2.3 Mac利用homebrew安装 三.nginx启动关闭 3.1 重 ...

  3. CentOS7 中防火墙配置

    systemctl  stop firewalld.service  #停止firewall systemctl disable firewalld.service #禁止firewall开机启动 开 ...

  4. mysql 查询参数尾部有空格时被忽略

    最近再使用mysql时,无意见发现,当我查询参数尾部输入若干个空格时,依然可以查出和不加空格相同的结果,像这样 select * from wa where name='be ' 等同于 select ...

  5. docker 搭建小型的node开发环境。

    选择daocloud的镜像源----快.不多说 镜像的准备: docker pull docker.io/node 下载node镜像 docker pull daocloud.io/nginx 下载n ...

  6. Go语言标准库之fmt

    fmt标准库是我们在学习Go语言过程中接触最早最频繁的一个了,本文介绍了fmtb包的一些常用函数. fmt fmt包实现了类似C语言printf和scanf的格式化I/O.主要分为向外输出内容和获取输 ...

  7. Java复习:集合框架(一张图)

    最后一个看不见了补充一下: ConcurrentHashMap:是线程安全的(基于lock实现的,同步的时候锁住的不是整个对象,而加了synchronized的是锁住了整个的对象),实现了Map接口, ...

  8. C#中读写Xml配置文件常用方法工具类

    场景 有时需要使用配置文件保存一些配置的属性,使其在下次打开时设置仍然生效. 这里以对xml配置文件的读写为例. 1.读取XML配置文. 2.写入XML配置文件. 3.匹配 XPath 表达式的第一个 ...

  9. 解决在Filter中读取Request中的流后,后续controller或restful接口中无法获取流的问题

    首先我们来描述一下在开发中遇到的问题,场景如下: 比如我们要拦截所有请求,获取请求中的某个参数,进行相应的逻辑处理:比如我要获取所有请求中的公共参数 token,clientVersion等等:这个时 ...

  10. 第二场周赛(递归递推个人Rank赛)——题解

    很高兴给大家出题,本次难度低于上一场,新生的六个题都可以直接裸递归式或者裸递推式解决,对于老生的汉诺塔3,需要找出一般式,后两题分别为裸ST算法(或线段树)/线性DP. 正确的难度顺序为 种花 角谷定 ...