ActiveMQ-持久化存储

作者: Airycode | 来源:发表于2018-05-25 17:22 被阅读31次

    activemq持久化存储:可以切换不同的存储技术(默认是kahadb,leveldb,mysql,oracle)
    我们用mysql实现持久化存储:
    首先我们需要进入F:\技术栈\apache-activemq-5.15.4-bin\apache-activemq-5.15.4\conf这个文件修改activemq.xml
    在第81行修改代码:

    <persistenceAdapter>
                <jdbcPersistenceAdapter dataSource="#mysql-ds"/>
                <!--<kahaDB directory="${activemq.data}/kahadb"/>-->
            </persistenceAdapter>
    

    在Broker标签的外边在第135行加上代码:

    <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:3306/test?relaxAutoCommit=true"/>
           <property name="username" value="root"/>
           <property name="password" value="root"/>
           <property name="poolPreparedStatements" value="true"/>
      </bean>
    

    如果你使用的版本没有dbcp所需要的数据源架包和数据库驱动包,就引入到lib文件夹下就行了。
    启动完成之后就会在mysql的数据库中生成三张表如图所示:


    image.png

    activemq_acks:这个是activemq保证消息确认的一张表
    activemq_lock:通过一个时间戳枷锁的方式
    activemq_msgs:消息表

    相关文章

      网友评论

        本文标题:ActiveMQ-持久化存储

        本文链接:https://www.haomeiwen.com/subject/owxujftx.html