InfoQ

新闻

ActiveMQ 5.1支持JMS目的地监控和MSMQ桥

作者 Srini Penchikala 译者 张龙 发布于 2008年5月28日 上午9时16分

社区
Java
主题
消息传送,
开放源代码
标签
JMS,
ActiveMQ

开源的企业消息服务供应者Apache ActiveMQ最近发布了5.1版,该版本在message broker的稳定性和性能上进行了很多改进。它还支持目的地监控、对消息按优先级排序,通过新的msmq传输组件实现的Microsoft Message Queue(MSMQ)到ActiveMQ的桥。

ActiveMQ容器的监控模块也进行了大量改进。增加一个新类——DestinationSource,它用来访问可用的QueuesTopics以及监听容器中Queues/Topics的创建或销毁。有一个新的API可以帮助最终用户查看可用的目的地(destinations)并对其进行查询以得到JMS统计信息,如活动队列数量、队列深度及消息数量等等。

新版本的其他新特性列举如下:

  • 无需JMS Session和consumer就能获取消息的新API。
  • 增加一个新的sendTimeout属性,这样就可以在MessageProducer类中更加优雅地处理超时。
  • 当传输失败时,可以为已建立连接的备份通道增加选项。当主传输失败时可以动态增加备份通道。
  • ActiveMQ的配置现在可以验证XSD了,这意味着它可以嵌到Spring配置文件中。

管理控制台JAR文件(activemq-console.jar)现在可以OSGi包的形式部署,因此它能在开源的ESB容器——Apache ServiceMix中重用。新版的ActiveMQ还解决了几个bugs,其中一些发生在高负载情况下,另一些与内存泄漏和性能有关。

去年12月发布的ActiveMQ 5.0拥有一些重要的新特性,列举如下:

  • AMQ消息存储(AMQ Message Store)——这是一个嵌入式、事务性的消息存储,可用来进行快速、可靠的持久化。
  • 消息指针(Message Cursors是新的内存模型的一部分,当有可用的空间时(对持久化的消息使用存储指针),它可以在存储地对消息进行分页。增加该特性的目的在于解决旧版本的ActiveMQ中一个常见问题:当使用非持久化的消息时会导致内存溢出。
  • Blob消息(Blob Messages):增加了一个新的BlobMessage API以处理客户端和ActiveMQ服务器之间发送的JMS消息中的二进制大对象(Binary Large OBjects——BLOBs)。
  • 镜像队列(Mirrored Queues):增加了镜像队列特性以更加轻松地监控ActiveMQ容器中特定的队列上的生产者和消费者之间的消息流。这些镜像队列不用配置就可以监听Message Broker内的所有队列。当其可用时,镜像队列会将发送到队列中的每条消息同时发送到一个具有类似名字的Topic;这样开发者和web管理员如果想查看队列上的消息交换的话,他们就可以使用镜像队列的topic。
  • 生产者流程控制(Producer Flow Control):开发者可以独立控制共享的JMS连接上的每个生产者而不必挂起整个连接。

ActiveMQ基于Java消息服务(Java Message Service,即JMS)规范1.1版。它还集成了Spring框架,因此通过Spring可以将ActiveMQ容器作为一个嵌入式broker。 可以在其站点上找到5.0版的更多入门文档以及在企业应用中使用ActiveMQ的一些示例

Apache Camel是ActiveMQ的一个子项目,它用来管理运行在ActiveMQ容器上进程的仲裁和路由活动。Camel(一个基于Spring的集成框架)实现了企业集成模式,从而使得开发者可以使用基于Java的领域特定语言(Domain Specific Language,或者叫Fluent API)、Scala DSL或者Spring的XML配置文件来配置路由和仲裁规则。

查看英文原文:ActiveMQ 5.1 Supports JMS Destination Monitoring and MSMQ Bridge

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。