activemq设置持久化消息mysql保存

1):mysql数据库新建activemq库

2):向activemq安装文件夹的lib包下导入连接mysql所需要的jar包

3)修改activemq安装文件夹下的config/activemq.xml文件

3.1)在</broker>标签下新增mysql连接配置bean,如下:

    <bean id="mysql-ds" class="org.apache.commons.dbcp.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="root"/>
        <property name="password" value="root"/>
        <property name="poolPreparedStatements" value="true"/>
    </bean>

3.2)注释掉<persistenceAdapter>和<transportConnectors>这两个标签

3.3)在<broker>标签内新增如下配置

        <persistenceAdapter>
            <jdbcPersistenceAdapter dataDirectory="${activemq.data}/activemq-data" dataSource="#mysql-ds"/>
        </persistenceAdapter>

        <transportConnectors>
            <transportConnector name="default" uri="tcp://localhost:61616"/>
        </transportConnectors>

4):重启activemq

可以看在1)上建的activemq数据库多了三种activemq自生成的表

持久化mysql数据库的3张表:

activemq_acks:ActiveMQ的签收信息。

activemq_lock:ActiveMQ的锁信息。

activemq_msgs:ActiveMQ的消息的信息

5)topic模式发布者发送一条消息,订阅者此时不启动。

可以看到消息的信息表中多一条刚刚发送的消息,被持久化到了mysql数据库中

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值