1、AMQ
AMQ是一种文件存储形式,它具有写入速度快和容易恢复的特点。消息存储在一个个文件中,文件的默认大小为32兆,如果一条消息的大小超过了32 兆,那么这个值必须设置大点。当一个存储文件中的消息已经全部被消费,那么这个文件将被标识为可删除,在下一个清除阶段,这个文件被删除。默认配置如下:
AMQ的属性:
属性名称 | 默认值 | 描述 |
directory | activemq-data | 消息文件和日志的存储目录 |
useNIO | true | 使用NIO协议存储消息 |
syncOnWrite | false | 同步写到磁盘,这个选项对性能影响非常大 |
maxFileLength | 32mb | 一个消息文件的大小 |
persistentIndex | true | 消息索引的持久化,如果为false,那么索引保存在内存中 |
maxCheckpointMessageAddSize | 4kb | 一个事务允许的最大消息量 |
cleanupInterval | 30000 | 清除操作周期,单位ms |
indexBinSize | 1024 | 索引文件缓存页面数,缺省为1024,当amq扩充或者缩减存储时,会锁定整个broker,导致一定时间的阻塞,所以这个值应该调整到比较大,但是代码中实现会动态伸缩,调整效果并不理想。 |
indexKeySize | 96 | 索引key的大小,key是消息ID |
indexPageSize | 16kb | 索引的页大小 |
directoryArchive | archive | 存储被归档的消息文件目录 |
archiveDataLogs | false | 当为true时,归档的消息文件被移到directoryArchive,而不是直接删除 |
相关推荐
Apache ActiveMQ 是一款非常流行的开源消息中间件,它支持 Java 消息服务 (JMS) 标准,并提供了多种高级功能,例如持久化、集群、故障转移等。ActiveMQ 能够帮助开发者实现解耦、可靠的消息传输以及高性能的应用程序...
- **持久化(Persistence)**:ActiveMQ支持消息持久化,即使在服务器重启后也能确保消息不会丢失。 - **事务(Transactions)**:允许用户在一个操作中发送多条消息,保证所有消息要么全部成功,要么全部失败。 ...
- **持久化**:ActiveMQ支持将消息持久化到磁盘,即使服务器重启,消息也不会丢失,保证了消息的可靠性。 - **高可用性**:通过网络集群和故障转移机制,ActiveMQ可以实现零停机时间,确保服务始终可用。 - *...
#### 二、非持久性和持久性消息传递的区别 1. **非持久性消息**:这类消息被标记为`NON_PERSISTENT`,意味着它们最多只被传递一次。这意味着如果目标接收方(例如一个JMS服务)在消息发送时处于离线状态,则该消息...
#### 二、ActiveMQ消息持久化 **1. 概述** 消息持久化是指将消息存储在非易失性存储介质上,以便在Broker重启时仍然能够恢复消息。ActiveMQ支持多种消息持久化机制,包括AMQ、KahaDB和JDBC。 **2. AMQ** - **...
**ActiveMQ笔记** ActiveMQ是Apache软件基金会的一个开源项目,它是Java消息服务(JMS)的一个实现,专门用于处理消息传递。作为一个中间件,ActiveMQ允许应用程序之间通过异步通信来解耦它们的功能,提高系统的可...
- **可靠性**:消息队列通常支持持久化存储,确保消息不会丢失。 - **扩展性**:可以根据需要轻松地添加更多的消费者来处理消息。 ![目标](C:\Users\Microsoft\AppData\Roaming\Typora\typora-user-images\image...
ActiveMQ支持多种优化策略,如持久化、负载均衡、事务和消息确认。同时,它还提供了安全特性,如SSL/TLS加密、用户权限控制和认证机制。 总结,ActiveMQ是企业级消息传递的可靠工具,其易用性、灵活性和丰富的特性...
在实际应用中,你可能需要根据业务需求配置更多选项,比如添加持久化存储、设置消息策略、安全认证等。通过调整`BrokerService`的各种属性和方法,可以定制化你的嵌入式Broker以满足特定需求。 总之,启动ActiveMQ...
**ActiveMQ笔记** ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它是Java Message Service (JMS) 的实现,广泛应用于分布式系统中的异步通信。本笔记将详细探讨ActiveMQ的核心概念、工作原理以及实际应用...
ActiveMQ 的主要特性包括支持多种协议(如 OpenWire、AMQP、STOMP、MQTT、REST),持久性消息存储机制,以及高可用性和负载均衡能力等。 ##### 1.2 下载与安装 根据提供的部分文件内容,我们可以了解到 ActiveMQ ...
ActiveMQ支持发布/订阅、点对点等多种消息模式,以及事务处理、消息持久化等功能,确保了消息的可靠传输。 **二、SpringBoot整合ActiveMQ** 1. **依赖引入** 在SpringBoot项目中,我们需要添加ActiveMQ的依赖。在...
此外,通过设置消息属性,还可以控制消息是否持久化存储,即使服务器重启也能保证不丢失。 6. **异常处理与回退策略** 在Spring中,可以通过定义错误处理策略来应对消息处理失败的情况,例如重新发送消息、记录...
5. 灵活性:允许配置各种消息持久化策略、网络拓扑和负载均衡策略。 6. 丰富的管理工具:提供Web控制台和命令行工具,方便监控和管理消息队列。 总结 ActiveMQ作为JMS的一个实现,提供了一种标准化的消息传递解决...
"ActiveMQ in Action"是一本权威的ActiveMQ专著,深入探讨了ActiveMQ的高级特性,如集群、持久化、网络连接等,适合已经有一定基础并希望深入了解的开发者。 通过这些资料,用户可以系统性地学习和掌握ActiveMQ,...
4. **持久化机制**:支持通过JDBC和Journal两种方式实现高效的消息持久化。 5. **高可用性**:支持高性能的集群配置、客户端-服务器模式以及点对点通信模式。 #### 二、ActiveMQ的安装与启动 **安装步骤:** 1. **...
ActiveMQ使用消息中间件技术,可以有效地在不同的系统之间异步传输消息,解决系统解耦、削峰、异步处理等问题。 首先,ActiveMQ能够实现系统的解耦。在传统的系统设计中,一个系统要调用另一个系统,通常是通过同步...
2. 可靠传输:消息在传输过程中得到持久化存储,确保即使接收方暂时不可用,消息也不会丢失。 3. 事务支持:允许将多个消息操作组合成一个原子事务,保证数据一致性。 4. 消息过滤:可以通过消息选择器控制哪些消息...
ActiveMQ支持高可用、集群、故障转移和持久化消息等特性,可以用于负载均衡和提高系统可靠性。它的设计目标是为了解决分布式系统中的消息传递和集成问题,同时也支持通过多种协议进行消息通信,如TCP/IP、SSL、NIO、...