ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ActiveMQ--消息存储和持久化

2021-05-29 22:02:50  阅读:166  来源: 互联网

标签:存储 JDBC 持久 -- 数据库 MQ 消息 ActiveMQ


  1.  官网(这里的持久化和前面说的消息持久化是不同的,前面的消息持久化,事务签收都是说的MQ服务器本机,而这里的持久化说的是与本机相连的数据库的数据持久化,包括:kahadb,JDBC等)
    • 为了保证高可用,消息不仅在本机MQ存储(持久化)一份,还要再数据库中持久化一份来保证高可用。
    • http://activemq.apache.org/persistence
    •  

  2. 是什么
    1. 面试题
    2. 回忆redis持久化机制有几种
    3. 说明:一句话:MQ服务器down机了,消息不会丢失的机制
      •  
                  
  3. 有那些
    1. AMQ Message store(了解)
    2. KahaDB 消息存储(默认)
      • 基于日志的文件,从ActiveMQ5.4开始默认的持久化插件 
      • 官网
        •   
      • 验证当前持久化使用的默认的存储机制
        •   
            
      • 说明:http://activemq.apache.org/kahadb
        •  

            
      • KahaDB的存储原理 (微型数据,有索引有数据,有备份,有锁机制)(kahaDB目录文件下包括:四个文件一把锁)
        •  

           

        •  

    3. JDBC消息存储
    4. LevelDDB消息存储(了解)基于文件存储的数据库
      •  

         

          
    5. JDBC Messae store with ActiveMQ Joural  
  4. jdbc消息存储
    1. MQ+MySQL

      •   

    2. 添加mysql数据库的驱动包到lib文件夹

      •  

         

          
    3.  jdbcPersistenceAdapter配置

        •  

          <persistenceAdapter>
            <jdbcPersistenceAdapter dataSource= "#mysql-ds"/>
          </persistenceAdapter>

           

           

            
    4. 数据库连接池配置

      •  

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

         

         

          
    5. 建仓sQL和建表说明

    6. 代码运行验证

    7. 数据库情况

    8. 小总结

    9. 开发有坑

        
  5. JDBC Message store with ActiveMQ Journal

标签:存储,JDBC,持久,--,数据库,MQ,消息,ActiveMQ
来源: https://www.cnblogs.com/zzhAylm/p/14826515.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有