博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ActiveMQ安装优化
阅读量:7052 次
发布时间:2019-06-28

本文共 1567 字,大约阅读时间需要 5 分钟。

ActiveMQ性能测试

1、下载ActiveMQ

官网:

2、安装ActiveMQ

解压压缩包即可直接使用

3、修改端口号、账号密码

默认连接端口为61616,按如下我把它修改为61617:
vi conf/activemq.xml

默认web console端口为8161,按如下我把它修改为8162:

vi conf/jetty.xml

默认账号密码为admin/admin,按如下我把它修改为admin/admin123456

vi conf/users.properties

admin=admin123456

4、调整配置

1) 修改持久化kahaDB的配置,如下:

其中参数,大家网上查一下kahaDB的配置了解下便可,这样配置满足一般应用了,我测试速度在2500 - 4000多的样子。不过具体还要看机器硬件。

这里要说明的是,按我测试5.13.0版本,如果kahaDB不做任何修改,在开启持久化的情况下,生产者(写入)速度只有三十多每秒的样子。(不知道其他版本默认是否这样)

2) 对一个broker的阈值是通过在activemq.xml中的配置中的部分设定的。这个特征允许producer仍然能够在consumer由于耗尽内存或转向producer flow control而变慢时发送消息,memoryUsage 默认值为20m,调整为128m

5、启动和停止

启动:${ActiveMQ_HOME}/bin/activemq start
停止:${ActiveMQ_HOME}/bin/activemq stop

6、顺便提几点关于使用Spring集成JMS的

1) 三种消息监听器可以参考帖子
2) 消息的重投策略:

使用事务,并且调用了rollback()方法; 一个事务session,关闭之间调用了commit; session中使用CLIENT_ACKNOWLEDGE签收模式,并且调用了Session.recover()方法。

3) 如果使用JTA分布式事务,需要修改 jms:listener-container 的 acknowledge="transacted"

4) 指定异步/同步发送

jms.alwaysSyncSend=false&jms.useAsyncSend=true 当alwaysSyncSend=false时,对于“NON_PERSISTENT”(非持久化)消息将使用“异步发送”;对于非持久化消息,使用异步发送是最佳的选择,我们通常使用这种手段调优。 当alwaysSyncSend=false时,如果指定了useAsyncSend=true,则“PERSISTENT”类型的消息,也将使用异步发送,但broker仍无法担保消息一定被持久化成功。 当alwaysSyncSend=false时,无论如何,在事务中的消息,都将使用异步发送。

转载地址:http://rhvol.baihongyu.com/

你可能感兴趣的文章
分解质因数
查看>>
字符型图片验证码识别完整过程及Python实现
查看>>
js,jquery获取url参数
查看>>
Java基础学习总结(36)——Java注释模板
查看>>
erange.heetian.com 回显任意账号
查看>>
OBJ文件格式简介
查看>>
实验三 有限自动机的构造与识别
查看>>
python的学习笔记之——time模块常用内置函数
查看>>
计算机是如何工作的
查看>>
【c++】必须在类初始化列表中初始化的几种情况
查看>>
阿拉伯数字1与英语字母l造成的代码bug
查看>>
深度学习常见的专业术语
查看>>
2018-2019-2 20165334《网络对抗技术》Exp2 后门原理与实践
查看>>
vue双向数据绑定最最最最最简单直观的例子
查看>>
HTML提交方式post和get区别(实验)
查看>>
Java 11.do语句
查看>>
学习理论之感知器与最大间隔分类器
查看>>
我们建了一个 Golang 硬核技术交流群(内含视频福利)
查看>>
Be Nice!要善良
查看>>
二、ansible配置简要介绍
查看>>