1.下载jdk并安装

sudo tar xvzf jdk-7u65-linux-x64.gz -C /usr/local

cd /usr/local

ln -s jdk1.8.0_65/ jdk

cd bin

sudo ln -s /usr/local/jdk/bin/java

2.下载RocketMQ并安装

官网下不下来

备用下载地址:http://download.csdn.net/detail/wtwshui/9194133#comment

sudo tar -zxvf alibaba-rocketmq-3.2.6.tar.gz -C /usr/local

cd /usr/local

sudo ln -s alibaba-rocketmq rocketmq

3.设置环境变量

export PATH=$PATH:/usr/local/bin

export JAVA_HOME=/usr/local/jdk

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

export ROCKETMQ_HOME=/usr/local/rocketmq

export PATH=$PATH::$ROCKETMQ_HOME/bin

cd /usr/local/rocketmq/bin

sudo sh os.sh

4.开启服务

nohup sh mqnamesrv &

nohup sh mqbroker -n "127.0.0.1:9876" &5.验证

完成上述步骤后,如果出现了错误,请试着修改runserver.sh和runbroker.sh这二个文件中的jvm配置选项,具体的jvm的含义如下:

JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:PermSize=128m -XX:MaxPermSize=320m"

-Xmx:设置JVM最大可用内存为Xmx M。

-Xms:设置JVM促使内存为Xms m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。

-Xmn:设置年轻代大小。整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。

-Xss:设置每个线程的堆栈大小。JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K。更具应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。

-XX:MaxPermSize:设置持久代大小。

使用jps命令列出所有的java进程

如果出现三个进程则表示安装配置的成功

6.编写代码

消费者:

public class Consumer {

public static void main(String[] args) throws InterruptedException, MQClientException {

DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("QuickStartConsumer");

consumer.setNamesrvAddr("127.0.0.1:9876");

consumer.setInstanceName("QuickStartConsumer");

consumer.subscribe("QuickStart", "*");

consumer.registerMessageListener(new MessageListenerConcurrently() {

@Override

public ConsumeConcurrentlyStatus consumeMessage(List msgs,

ConsumeConcurrentlyContext context) {

System.out.println(Thread.currentThread().getName() + " Receive New Messages: " + msgs);

return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;

}

});

consumer.start();

System.out.println("Consumer Started.");

}

}生产者:

public class Producer {

public static void main(String[] args) throws MQClientException, InterruptedException {

DefaultMQProducer producer = new DefaultMQProducer("QuickStartProducer");

producer.setNamesrvAddr("127.0.0.1:9876");

producer.setInstanceName("QuickStartProducer");

producer.start();

for (int i = 0; i < 1000; i++) {

try {

Message msg = new Message("QuickStart",// topic

"TagA",// tag

("Hello RocketMQ ,QuickStart" + i).getBytes()// body

);

SendResult sendResult = producer.send(msg);

System.out.println(sendResult);

}

catch (Exception e) {

e.printStackTrace();

Thread.sleep(1000);

}

}

producer.shutdown();

}

}

如果运行上述的程序出现异常,请看看第五步是不是有问题,如果没有的话,使用下面命令关闭防火墙

sudo ufw disable

7.运行结果

linux下mq的mc.sh在哪?,RocketMQ的安装与使用相关推荐

  1. linux下mq通道的命令,Linux下MQ的安装

    Linux下MQ的安装 如果MQ的安装包是ISO,所以需要将ISO文件mount到Linux的一个目录下面,具体操作如下: 假如你选定的mount目录为根目录下mnt/下面,或者下面你新建一个目录可以 ...

  2. linux下扩展名为sh的安装程序文件如何运行?

    linux下扩展名为sh的安装程序文件如何运行? 扩展名为sh到文件是什么东东? 如何运行扩展名为sh的安装程序? 扩展名为sh到文件是什么东东?   是linux系统下的脚本文件,很多linux下的 ...

  3. linux下mqm添加用户,Linux 下MQ的安装和配置亲测

    开篇之前奉上几条黄金链接: MQ参考文档 http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0m0/index.jsp?topic=%2Fcom.ib ...

  4. linux安装mq报5724,linux下MQ简单配置手册.doc

    精品 消息发送涉及到的队列及通道示意图: 定义发送方为A,接收方为B,下面是建立A向B发送消息的单向配置. 发送方A的配置 1. 在发送方A创建队列管理器QM_A: [[email protected ...

  5. linux运行不了.sh文件,linux下不能执行/bin/sh脚本的原因:command not found

    Linux下执行.sh脚本错误:bin/sh^M: bad interpreter: No such file or directory 原因是.sh脚本在windows系统下用记事本文件编写的.不同 ...

  6. linux下添加mq队列管理配置,linux下 MQ第二弹:队列管理器的配置,实现双机MQI通道异步双向通信,亲测!!...

    本人前面文章一提到MQ 在linux下的安装,在此只描述队列管理器的配置,实现MQI通道的双向通讯. 一下方法我已亲测!! 贴出A,B两机的MQ配置记录: A机: #**--------------- ...

  7. Linux下 WRF Domain Wizard 使用教程(PART1:下载+安装)

    从下载--安装--使用 一站式服务~ PART I: 下载+安装 下载WRFDomainWizard 网址: https://www.esrl.noaa.gov/gsd/wrfportal/Domai ...

  8. linux下安装oracle集群,【Oracle 集群】Linux下Oracle RAC集群搭建之Oracle DataBase安装(八)...

    目录 数据库安装 继oracle集群安装之后,接下来也是最重要的数据库安装,整个数据库安装难度不大,用户以oracle用户身份登录RAC1主节点,对解压后的文件安装.主节点下安装后,其他所有结点自动安 ...

  9. Linux 下的截屏并编辑的工具-flamshot安装及使用

    方法1. linux 系统自带简单截图方式 支持功能:截取整个屏幕:屏幕中的某个区域:某个特定的窗口: 如果只需要获取一张屏幕截图,不对其进行编辑的话,那么键盘的默认快捷键就可以满足要求了.而且不仅仅 ...

最新文章

  1. deepin linux 命令行_ThinkPad E480安装Manjaro-Deepin备忘录
  2. Android之记录并研究Volley框架中知识点
  3. html的ol和ul和li,HTML 列表元素OL、UL、LI
  4. 【移动开发】Android应用开发者应该知道的东西
  5. 无法启动此程序因为计算机中丢失msvcr110,无法启动此程序因为计算机中丢失msvcr110,教您无法运行程序提示计算机中丢失...
  6. 【arduino】用VSCode替代Arduino编辑器,arduino VSCode编辑器
  7. 科研实习 | 北京大学计算机学院杨智老师组招收系统方向科研实习生
  8. 利用python爬虫(part13)--requests模块之requests.get的参数们
  9. Microsoft 推出在AzureApp Service上支持Windows容器的公开预览版
  10. Netbeans 安装和配置 C/C++ 支持
  11. 计算机自带的桌面远程,如何远程控制电脑桌面
  12. 求两个有序单链表的并交集
  13. 小甲鱼python【魔法方法-算数运算】学习笔记
  14. cad2020打印样式放在哪个文件夹_CAD图纸管理与打印——布局与图纸集
  15. 电商支付-使用Restful api接口集成Paypal支付方式(一)
  16. HDMI是什么设备与计算机连接的接口类型,Type-C、HDMI及DP视频接口有什么区别?电脑显示器连接线如何选?...
  17. 小米硬盘路由器服务器,随手分享攻略 篇九:小米路由器更换10T硬盘 —— 小白教程...
  18. JAVA中关于除数为0
  19. Java容器Treeset的两种排序方法
  20. IDEA下调试和运行Hadoop程序例子

热门文章

  1. python读取中文文件报错-Python3 解决读取中文文件txt编码的问题
  2. java好还是python好-学python好还是java好
  3. python 科学计算基础教程电子版-终于领会python科学计算入门教程
  4. python3爬虫入门教程-总算懂得python3.4爬虫入门教程
  5. python画三维温度散点图-python 绘制三维图形、三维数据散点图
  6. python工程师-Python工程师学习之旅
  7. python xpath语法-Python xpath表达式如何实现数据处理
  8. python使用什么来表示不同级别的语句块-Python
  9. stm32跑python-简易数据采集分析流程.stm32+python
  10. 自学python需要什么配置的电脑-入门学python需要什么配置的电脑?