本文转自 https://www.jianshu.com/p/8c3cc95f16c2,如有侵权,请联系删除。
[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.gz
wget https://archive.apache.org/dist/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
编辑如下配置:
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="127.0.0.1"/>
<property name="port" value="8161"/>
</bean>
(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
找到如下配置:
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
将61616端口,修改为自己的端口即可(非必须)。
2.5 用户配置
2.5.1 管理页面用户配置
管理页面
的户名、密码、角色
信息在此处配置。
默认管理员,用户名、密码:admin/admin
默认普通用户,用户名、密码:user/user
打开配置文件jetty-realm.properties
:
vim /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 消息端口用户配置
tcp消息访问端口(发送、)
的户名、密码
信息在此处配置。
默认用户名、密码:admin/admin
打开配置文件users.properties
:
vim /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 更改配置文件
打开配置文件env
:
vim /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_MEMORY
或ACTIVEMQ_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来标注不规范,读者需注意。
配置说明:
配置项 | 内容 | 说明 |
---|---|---|
Initial Context Factory | org.apache.activemq.jndi.ActiveMQInitialContextFactory | |
Connection Factory | ConnectionFactory | |
Destination | dynamicTopics/xxx | dynamicTopics必须 |
(1)生产者
创建线程组
创建JMS Publisher
1610860532936.png
(2)消费者
创建JMS Subscriber
1610861086744.png
(3)查看结果
创建View Result Tree
2.9.2 队列模式
和发布订阅模式类似,区别为Destination
为dynamicQueues
/xxx
配置说明:
配置项 | 内容 | 说明 |
---|---|---|
Connection Factory | ConnectionFactory | |
Destination | dynamicQueues/xxx | dynamicQueues必须 |
(1)生产者
1610862857445.png
(2)消费者
1610862880699.png
(3)查看结果
创建View Result Tree
2.9.3 点对点模式
待完善
本文转自 https://www.jianshu.com/p/8c3cc95f16c2,如有侵权,请联系删除。