centos7安装activeMq


[TOC]1 场景

1.1 目标

centos7安装acitveMq。

1.2 版本

Linux系统版本:centos7.3.1611

JDK版本:1.8.0_121

acitveMq版本5.16.0

1.3文档

http://activemq.apache.org/components/classic/documentation

2 部署

2.1 依赖环境

activeMq依赖JDK环境。JDK安装过程,参照:https://www.jianshu.com/p/0b9467edf04d

2.2 下载

下载并命名文件为:apache-activemq-5.16.0-bin.tar.gzwget https://mirrors.tuna.tsinghua.edu.cn/apache/activemq/5.16.0/apache-activemq-5.16.0-bin.tar.gz

2.3 解压

tar -xzvf apache-activemq-5.16.0-bin.tar.gz -C /opt
解压后文件路径如下:/opt/apache-activemq-5.16.0
2.4 访问配置

2.4.1 管理页面配置

默认http端口8161此处配置activeMq后台管理页面的相关配置,可配置访问的host和端口。必须要进行HOST配置,否则其他服务器无法访问此后台网页。打开配置文件:vim /opt/apache-activemq-5.16.0/conf/jetty.xml
编辑如下配置:

(1)更改host(必须)打开配置文件:需要更改host配置为0.0.0.0当前服务器的实际IP,此处的配置为必须进行的配置

(2)更改端口(非必须)可根据实际情况,更改端口,或采用默认端口8161

2.4.2 消息端口配置

默认tcp端口61616此处配置activeMq的访问端口配置,用来和程序进行交互,接收消息等。如需要修改activeMq的tcp访问端口,可进行如下配置(非必须):打开配置文件:vim /opt/apache-activemq-5.16.0/conf/activemq.xml
找到如下配置:将61616端口,修改为自己的端口即可(非必须)。

2.5 用户配置

2.5.1 管理页面用户配置管理页面户名、密码、角色信息在此处配置。

默认管理员,用户名、密码:admin/admin

默认普通用户,用户名、密码:user/user

打开配置文件jetty-realm.propertiesvim /opt/apache-activemq-5.16.0/conf/jetty-realm.properties
文件内容如下:# Defines users that can access the web (console, demo, etc.)
# username: password [,rolename ...]
admin: admin, admin
user: user, user
如文件内容所示,配置信息,内容格式如下:用户名: 密码, 角色
如新增一个用户(用户名:yjpdd,密码:jypddpwd,角色:user),则新增配置如下:yjpdd: jypddpwd, user
2.5.2 消息端口用户配置t

cp消息访问端口(发送、)户名、密码信息在此处配置。默认用户名、密码:admin/admin打开配置文件users.propertiesvim /opt/apache-activemq-5.16.0/conf/users.properties
文件内容如下:admin=admin
如文件所示,配置的信息,内容格式如下:用户名=密码
如新增一个用户(用户名:yjpddport,密码:jypddportpwd),则新增配置如下:yjpddport=jypddportpwd
2.6 启动命令

启动/opt/apache-activemq-5.16.0/bin/activemq start
关闭/opt/apache-activemq-5.16.0/bin/activemq stop
2.7 查看启动状态

查看后台管理页面网页访问:http://192.168.1.11:8161
默认用户名:admin,默认密码:admin。用户信息可在2.4.1配置。

2.8 JVM参数配置

2.8.1 查看当前配置

activeMq运行环境依赖java环境,可配置对应的jvm参数,来进行参数调优。可以再启动命令中查看当前activeMq的jvm参数,

如下:

[root@master linux-x86-64]# ps -ef |grep activemq
root 7272 1 93 13:58 pts/0 00:00:11 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/opt/apache-activemq-5.16.0//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/opt/apache-activemq-5.16.0//tmp -Dactivemq.classpath=/opt/apache-activemq-5.16.0//conf:/opt/apache-activemq-5.16.0//../lib/: -Dactivemq.home=/opt/apache-activemq-5.16.0/ -Dactivemq.base=/opt/apache-activemq-5.16.0/ -Dactivemq.conf=/opt/apache-activemq-5.16.0//conf -Dactivemq.data=/opt/apache-activemq-5.16.0//data -jar /opt/apache-activemq-5.16.0//bin/activemq.jar start

可见队列的jvm堆内存配置为-Xms64M -Xmx1G或者使用jconsole、jinfo查看activeMq的jvm相关信息:

Command line: -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/opt/apache-activemq-5.16.0//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/opt/apache-activemq-5.16.0//tmp -Dactivemq.classpath=/opt/apache-activemq-5.16.0//conf:/opt/apache-activemq-5.16.0//../lib/: -Dactivemq.home=/opt/apache-activemq-5.16.0/ -Dactivemq.base=/opt/apache-activemq-5.16.0/ -Dactivemq.conf=/opt/apache-activemq-5.16.0//conf -Dactivemq.data=/opt/apache-activemq-5.16.0//data
2.8.2 更改配置文件

打开配置文件envvim /opt/apache-activemq-5.16.0/bin/env
修改其中的配置ACTIVEMQ_OPTS_MEMORY# Set jvm memory configuration (minimal/maximum amount of memory)
ACTIVEMQ_OPTS_MEMORY="-Xms64M -Xmx1G"
(1)配置堆内存ACTIVEMQ_OPTS_MEMORY="-Xms512M -Xmx512M"
(2)配置jxm监控增加jxm监控参数配置,可用jprofile或jvisualVm等工具对activeMq进行监控:-Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
2.8.3 补充

也可直接修改activemq命令文件,在文件头部的变量ACTIVEMQ_OPTS_MEMORYACTIVEMQ_OPTS配置JVM参数如下:ACTIVEMQ_OPTS_MEMORY="-Xms512M -Xmx512M"
说明activemq启动命令中有如下注释,表示获取jvm参数的方式:System variables for this script, like ACTIVEMQ_OPTS and ACTIVEMQ_OPTS_MEMORY,can be configured in 'env' script located in this directory.

2.9 JMmeter测试消息端口

默认用户名:admin,默认密码:admin。用户信息可在

2.4.2配置。

将activeMq中根目录下的jar包activemq-all-5.16.0.jar,拷贝到jmeter的lib目录下apache-jmeter-5.4\lib,因为jemeter测试时用到activeMq的jms实现类

2.9.1 发布订阅模式

纠正:队列名称应该以Topic关键字来标注,以下测试配置,以Queue来标注不规范,读者需注意。配置说明:

(1)生产者创建线程组创建JMS Publisher

2)消费者创建JMS Subscriber

(3)查看结果创建View Result Tree

2.9.2 队列模式和发布订阅模式

类似,区别为DestinationdynamicQueues/xxx配置说明:

(1)生产者

(2)消费者

3)查看结果创建View Result Tree

2.9.3 点对点模式

待完善