`

ActiveMQ使用笔记(二)ActiveMQ消息持久化(2)

 
阅读更多

2、KahaDB

KahaDB是基于文件的本地数据库储存形式,虽然没有AMQ的速度快,但是它具有强扩展性,恢复的时间比AMQ短,从5.4版本之后KahaDB做为默认的持久化方式。默认配置如下:

KahaDB的属性:

property name default value Comments
directory activemq-data 消息文件和日志的存储目录
indexWriteBatchSize 1000 一批索引的大小,当要更新的索引量到达这个值时,更新到消息文件中
indexCacheSize 10000 内存中,索引的页大小
enableIndexWriteAsync false 索引是否异步写到消息文件中
journalMaxFileLength 32mb 一个消息文件的大小
enableJournalDiskSyncs true 是否讲非事务的消息同步写入到磁盘
cleanupInterval 30000 清除操作周期,单位ms
checkpointInterval 5000 索引写入到消息文件的周期,单位ms
ignoreMissingJournalfiles false 忽略丢失的消息文件,false,当丢失了消息文件,启动异常
checkForCorruptJournalFiles false 检查消息文件是否损坏,true,检查发现损坏会尝试修复
checksumJournalFiles false 产生一个checksum,以便能够检测journal文件是否损坏。
5.4版本之后有效的属性:

archiveDataLogs false 当为true时,归档的消息文件被移到directoryArchive,而不是直接删除
directoryArchive null 存储被归档的消息文件目录
databaseLockedWaitDelay 10000 在使用负载时,等待获得文件锁的延迟时间,单位ms
maxAsyncJobs 10000 同个生产者产生等待写入的异步消息最大量
concurrentStoreAndDispatchTopics false 当写入消息的时候,是否转发主题消息
concurrentStoreAndDispatchQueues true 当写入消息的时候,是否转发队列消息
5.6版本之后有效的属性:

archiveCorruptedIndex false 是否归档错误的索引

从5.6版本之后,有可能发布通过多个kahadb持久适配器来实现分布式目标队列存储。什么时候用呢?如果有一个快速的生产者和消费者,当某一个 时刻生产者发生了不规范的消费,那么有可能产生一条消息被存储在两个消息文件中,同时,有些目标队列是危险的并且要求访问磁盘。在这种情况下,你应该用通 配符来使用mKahaDB。如果目标队列是分布的,事务是可以跨越多个消息文件的。

每个KahaDB的实例都可以配置单独的适配器,如果没有目标队列提交给filteredKahaDB,那么意味着对所有的队列有效。如果一个队列没有对应的适配器,那么将会抛出一个异常。配置如下:

如果filteredKahaDB的perDestination属性设置为true,那么匹配的目标队列将会得到自己对应的KahaDB实例。配置如下:

转http://www.huaishao8.com/config/activemq/132.html

分享到:
评论

相关推荐

    activemq activeMq笔记

    Apache ActiveMQ 是一款非常流行的开源消息中间件,它支持 Java 消息服务 (JMS) 标准,并提供了多种高级功能,例如持久化、集群、故障转移等。ActiveMQ 能够帮助开发者实现解耦、可靠的消息传输以及高性能的应用程序...

    ActiveMQ 教学视频/教程 /附带笔记等资源

    - **持久化(Persistence)**:ActiveMQ支持消息持久化,即使在服务器重启后也能确保消息不会丢失。 - **事务(Transactions)**:允许用户在一个操作中发送多条消息,保证所有消息要么全部成功,要么全部失败。 ...

    activemq系列笔记

    - **持久化**:ActiveMQ支持将消息持久化到磁盘,即使服务器重启,消息也不会丢失,保证了消息的可靠性。 - **高可用性**:通过网络集群和故障转移机制,ActiveMQ可以实现零停机时间,确保服务始终可用。 - *...

    activeMQ笔记

    2. **持久性消息**:这类消息被标记为`PERSISTENT`,表示它们将使用暂存后再转送的机制进行传递。如果一个JMS服务暂时离线,那么这些消息将被保存下来,直到服务恢复在线状态后才会被重新发送。 - **优点**:确保了...

    ActiveMQ笔记

    **ActiveMQ笔记** ActiveMQ是Apache软件基金会的一个开源项目,它是Java消息服务(JMS)的一个实现,专门用于处理消息传递。作为一个中间件,ActiveMQ允许应用程序之间通过异步通信来解耦它们的功能,提高系统的可...

    消息队列activemq学习笔记

    - **可靠性**:消息队列通常支持持久化存储,确保消息不会丢失。 - **扩展性**:可以根据需要轻松地添加更多的消费者来处理消息。 ![目标](C:\Users\Microsoft\AppData\Roaming\Typora\typora-user-images\image...

    ActiveMQ学习笔记之一--ActiveMQ下载

    ActiveMQ支持多种优化策略,如持久化、负载均衡、事务和消息确认。同时,它还提供了安全特性,如SSL/TLS加密、用户权限控制和认证机制。 总结,ActiveMQ是企业级消息传递的可靠工具,其易用性、灵活性和丰富的特性...

    ActiveMQ学习笔记之四--启动嵌入式Broker(纯代码方式)

    在实际应用中,你可能需要根据业务需求配置更多选项,比如添加持久化存储、设置消息策略、安全认证等。通过调整`BrokerService`的各种属性和方法,可以定制化你的嵌入式Broker以满足特定需求。 总之,启动ActiveMQ...

    ActiveMq笔记.zip

    **ActiveMQ笔记** ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它是Java Message Service (JMS) 的实现,广泛应用于分布式系统中的异步通信。本笔记将详细探讨ActiveMQ的核心概念、工作原理以及实际应用...

    Apache ActiveMQ学习笔记【原创:mq的方式有两种:点到点和发布/订阅】

    ActiveMQ 的主要特性包括支持多种协议(如 OpenWire、AMQP、STOMP、MQTT、REST),持久性消息存储机制,以及高可用性和负载均衡能力等。 ##### 1.2 下载与安装 根据提供的部分文件内容,我们可以了解到 ActiveMQ ...

    ActiveMQ整合SpringBoot笔记及代码

    ActiveMQ支持发布/订阅、点对点等多种消息模式,以及事务处理、消息持久化等功能,确保了消息的可靠传输。 **二、SpringBoot整合ActiveMQ** 1. **依赖引入** 在SpringBoot项目中,我们需要添加ActiveMQ的依赖。在...

    ActiveMQ学习笔记(二) JMS与Spring

    此外,通过设置消息属性,还可以控制消息是否持久化存储,即使服务器重启也能保证不丢失。 6. **异常处理与回退策略** 在Spring中,可以通过定义错误处理策略来应对消息处理失败的情况,例如重新发送消息、记录...

    activeMQ总结

    5. 灵活性:允许配置各种消息持久化策略、网络拓扑和负载均衡策略。 6. 丰富的管理工具:提供Web控制台和命令行工具,方便监控和管理消息队列。 总结 ActiveMQ作为JMS的一个实现,提供了一种标准化的消息传递解决...

    分享一些ActiveMQ的资料

    "ActiveMQ in Action"是一本权威的ActiveMQ专著,深入探讨了ActiveMQ的高级特性,如集群、持久化、网络连接等,适合已经有一定基础并希望深入了解的开发者。 通过这些资料,用户可以系统性地学习和掌握ActiveMQ,...

    active mq 学习笔记

    2. **标准支持**:完全支持JMS 1.1和J2EE 1.4规范,包括持久化、XA消息和事务管理等功能。 3. **Spring集成**:ActiveMQ易于与使用Spring框架的应用集成,并且支持Spring 2.0的特性。 4. **持久化机制**:支持通过...

    ActiveMQ.pdf

    ActiveMQ使用消息中间件技术,可以有效地在不同的系统之间异步传输消息,解决系统解耦、削峰、异步处理等问题。 首先,ActiveMQ能够实现系统的解耦。在传统的系统设计中,一个系统要调用另一个系统,通常是通过同步...

    ActiveMQ+In+Action学习笔记.docx

    2. 可靠传输:消息在传输过程中得到持久化存储,确保即使接收方暂时不可用,消息也不会丢失。 3. 事务支持:允许将多个消息操作组合成一个原子事务,保证数据一致性。 4. 消息过滤:可以通过消息选择器控制哪些消息...

    ActiveMQ+In+Action翻译笔记-+更新版

    ActiveMQ支持高可用、集群、故障转移和持久化消息等特性,可以用于负载均衡和提高系统可靠性。它的设计目标是为了解决分布式系统中的消息传递和集成问题,同时也支持通过多种协议进行消息通信,如TCP/IP、SSL、NIO、...

Global site tag (gtag.js) - Google Analytics