`

5.5内存消息仓库

阅读更多
内存消息仓库在内存中持有所有持久化消息。没有活跃的涉及超高速缓存,所以你不得不注意JVM和内存同时限制你的设置,是否足够容纳可能在同一时间存在的所有消息。
如果你知道代理将只是存储一定量的消息,内存消息仓库会是有用的,消息通常将快速消耗。但是对于小的想证明于JMS代理交互的测试用例它真的显示出它的威力,但是不要想招致消息仓库开始时间的花费,或者在测试结束后清理消息的麻烦事。
5.5.1配置内存仓库
配置内存仓库很简单。内存仓库是当代理的persistent属性被设置成false(默认情况为true)时使用的实现。这里有一个配置示例:
<?xml version="1.0" encoding="UTF-8"?>
<beans>
<broker brokerName="test-broker"
persistent="false"
xmlns="http://activemq.apache.org/schema/core">
<transportConnectors>
<transportConnector uri="tcp://localhost:61635"/>
</transportConnectors>
</broker>
</beans>
通过在broker结点上设置persistent属性为false,这有效地告诉代理不要持久化消息文长时间的存储。替代的,ActiveMQ代理会在内存中持有消息知道消息被消费或者ActiveMQ代理被停止。
用内存仓库嵌入一个ActiveMQ代理是简单的。下面的示例通过内存仓库启动代理:
import org.apache.activemq.broker.BrokerService;
public void createEmbeddedBroker() throws Exception {
	BrokerService broker = new BrokerService();
	//configure the broker to use the Memory Store
	[b]broker.setPersistent(false);[/b]
	//Add a transport connector
	broker.addConnector("tcp://localhost:61616");
	//now start the broker
	broker.start();
}

注意加粗的文字在代理对象上设置persistence为false。这和前面的XML配置示例是相同的。
现在没有现成工具箱ActiveMQ的消息仓库从一种转变为另一种。如果你想要为应用程序改变消息仓库,建议你在新的ActiveMQ代理上这样做,或者等待你的应用消费发送的所有消息,然后关闭ActiveMQ代理,为它重新配置消磁仓库,然后重启它。
这章讨论了在ActiveMQ中的实现消息持久化的多种消息仓库实现。另一个话题,讨论一些关于消息持久化在ActiveMQ代理中是一种为非持久主题主题订户更专业的ActiveMQ消息代理缓存案例。
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    TOMCAT5.5下载

    2. **更好的性能和稳定性**:在5.5版本中,Tomcat对内存管理、线程处理和连接器进行了优化,提高了整体性能,同时也增强了系统的稳定性。 3. **安全管理**:Tomcat 5.5 引入了更强大的安全管理机制,支持基于角色的...

    centos 5.5 32位 下载地址

    32位系统最多能访问4GB的内存,并且其指令集和数据类型设计为32位宽度。尽管在现代计算环境中,64位系统已经变得更为普遍,但在某些情况下,如老式硬件或特定嵌入式设备,32位系统仍然有其应用价值。 ### 下载资源...

    mysql数据库5.5

    MySQL是一个开源、免费的数据库解决方案,广泛应用于Web应用程序、数据仓库和企业级系统。下面我们将深入探讨MySQL 5.5中的关键知识点。 1. **InnoDB存储引擎的改进** MySQL 5.5对InnoDB存储引擎进行了重大优化,...

    mysql-5.5安装教程

    通常,这包括至少1GB的内存,足够的硬盘空间以及支持的操作系统,如Windows、Linux或macOS。 2. **下载MySQL**:访问MySQL官方网站(https://dev.mysql.com/downloads/mysql/)并选择适合你操作系统的MySQL 5.5...

    centos 6.5配置mysql5.5

    由于 CentOS 6.5 的官方仓库中并不包含 MySQL 5.5 版本,因此我们需要添加一个额外的软件源,这里推荐使用 REMI Repository(RPMforge)来安装 MySQL 5.5。 首先,下载 REMI Repository 的安装包: ```bash wget ...

    MySQL Server 5.5(64位)

    MySQL Server 5.5是MySQL数据库管理系统的一个重要版本,尤其对于64位操作系统而言,它提供了更高效的数据处理能力和更大的内存支持。MySQL是一款开源的关系型数据库管理系统(RDBMS),在互联网应用程序中广泛使用...

    VMware vSphere 5.5的Greenplum的数据库性能

    Greenplum数据库以其无共享架构(Shared-nothing MPP)而闻名,这种设计特别适合大规模数据分析和数据仓库应用。随着数据量和数据源的爆炸性增长,单一大型计算机已无法满足处理需求,而Greenplum通过在多台计算机上...

    Qt5.5 使用FFmpeg3.4 开发库 完美环境搭建

    - **内存管理**:FFmpeg的API通常不负责内存管理,因此你需要在使用完资源后手动释放。 - **线程安全**:如果要在多线程环境中使用FFmpeg,确保你的代码是线程安全的。 - **性能优化**:FFmpeg提供了许多选项来优化...

    CentOS 安装 PHP5.5+Redis+XDebug+Nginx+MySQL全纪录

    - Redis是一个开源的使用ANSI C语言编写、支持网络、基于内存、可选持久性的键值对存储数据库。文章中提供了在CentOS上安装Redis的命令,包括使用yum安装依赖、下载Redis源码、编译安装以及修改配置文件。Redis配置...

    php_igbinary1.2.1合集(支持PHP5.3-5.5)

    3. **跨进程通信**: 当使用消息队列或分布式系统时,igbinary序列化可以减小数据传输的开销。 ### 5. 兼容性和版本管理 由于igbinary1.2.1是针对PHP 5.3至5.5的版本,确保在升级PHP版本时检查是否有兼容的igbinary...

    PyPI 官网下载 | vmprof-0.1.5.5.tar.gz

    `PyPI`(Python Package Index)是Python编程语言的官方软件仓库,它提供了大量的第三方Python库,使得开发者可以方便地分享和使用他人开发的模块。在本例中,我们关注的是名为`vmprof`的一个库,版本号为0.1.5.5,其...

    LAMP环境搭建(CentOS5.5版).doc

    首先编辑`/etc/yum.repos.d/CentOS-Media.repo`文件,将光盘挂载点指向正确的路径,并启用c5-media仓库。 2. **卸载系统预装的Apache、MySQL和PHP** 在安装新的版本之前,需要先卸载系统自带的Apache、MySQL和PHP...

    lanmsng:LAN Messenger(Qt 5.5 的端口和一些修复)

    Qt 5.5 引入了更好的模块化,更高效的内存管理和渲染,以及对现代硬件和操作系统的更好支持。 2. **错误修复**:项目描述中提到的“一些修复”可能包括解决原版软件中存在的bug,提高程序稳定性,确保在不同环境下...

    如何把php5.3版本升级到php5.4或者php5.5

    PHP 5.4和5.5相比5.3,增加了许多改进,例如更好的错误处理机制、增强了的语法糖(如短数组语法)、更好的内存管理以及对新特性如 Traits 和 Generator 的支持。这些更新能够提高代码的效率,降低安全风险,并提供更...

    Laravel 的缓存源码解析1

    `CacheManager` 是一个缓存工厂,负责创建并管理不同类型的缓存仓库(`Repository`),每个仓库对应一个具体的缓存驱动实现,如 `FileStore`、`RedisStore` 等,它们实现了 `Illuminate\Contracts\Cache\Store` 接口...

    mysql5.5.10安装手册

    2. **内存**:至少1 GB,但推荐更多,以支持更大的并发连接和复杂查询。 3. **磁盘空间**:基础安装需要大约200 MB,但实际使用中需要根据数据量和日志大小来估算。 4. **网络**:如果数据库需要远程访问,稳定的...

    nginx操作文档

    Nginx的特点在于其低内存占用率和出色的并发处理能力,在同类Web服务器中表现出色。在中国大陆,许多知名互联网企业如新浪、网易、腾讯等都采用Nginx作为其核心服务器组件之一。 官方网站:[http://nginx.org/cn/]...

    sappress_bw_performance_optimization_guide_080

    #### 5.5 内存规模规划 - **加载和数据准备过程**:考虑数据加载阶段对内存的需求。 - **查询处理**:评估查询执行过程中内存的消耗。 - **总结**:综合考虑CPU和内存的需求,确定最终的配置方案。 #### 5.6 运行...

    Oracle 10g数据仓库实践--数据仓库基础

    根据提供的文档标题、描述、标签以及部分内容,我们可以总结出以下关于“Oracle 10g 数据仓库实践—数据仓库基础”的详细知识点。 ### 一、Oracle 10g 数据仓库实践概述 #### 1.1 数据仓库简介 - **定义与功能**:...

Global site tag (gtag.js) - Google Analytics