activemq传输协议,生产环境一般用nio
修改配置文件改为nio协议
支持多协议
持久化默认kahadb
持久化方式
默认:
文件夹下的目录
存储原理
levelDB存储最新版本以后支持的方式![](https://img-blog.csdnimg.cn/20191103225652548.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5NzIwMjA4,size_16,color_FFFFFF,t_70)
jdbc持久化
将mysql驱动包放在activemq的lib目录下
配置activemq.xml文件
数据库配置![](https://img-blog.csdnimg.cn/20191103230701849.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5NzIwMjA4,size_16,color_FFFFFF,t_70)
或者官网
<bean id="mysql-ds" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"/>
<property name="username" value="activemq"/>
<property name="password" value="activemq"/>
<property name="poolPreparedStatements" value="true"/>
</bean>
在数据库中建立activemq,启动后会在数据库生成三张表
msgs表字段
acks表字段
lock表字段
队列模式生产者代码
查看数据库
消费者运行完消费完消息后数据库中的消息将被删除
topic模式
先启动消费者在启动生产者
生产者代码
消费者代码
总结![](https://img-blog.csdnimg.cn/20191103233021829.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5NzIwMjA4,size_16,color_FFFFFF,t_70)
jdbc with journal
配置