【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

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

  • 2008-05-28
  • 本文字数:1332 字

    阅读完需:约 4 分钟

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

ActiveMQ 容器的监控模块也进行了大量改进。增加一个新类——DestinationSource,它用来访问可用的 Queues Topics 以及监听容器中 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

2008-05-28 09:162973
用户头像

发布了 88 篇内容, 共 258.5 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

永远不该忘记!科技才是硬道理,手中没有剑,跟有剑不用,是两回事

加入高科技仿生人

人工智能 ChatGPT 文心一言 通义千问 科学技术

TiDB x CAPCOM | 为在线游戏提供灵活、可靠、可扩展的数据库服务

PingCAP

Cloud Kernel SIG月度动态:发布ANCK 5.10、4.19新版本,ABS新增仓库构建功能

OpenAnolis小助手

开源 CVE anck 龙蜥sig Cloud Kernel

企业移动数字化平台如何赋能企业管理升级?

WorkPlus

白鹭游戏引擎网络棋牌搭建步骤

北桥苏

php 游戏开发 白鹭引擎

浅谈一下ThinkPHP5.1实现事务嵌套的特性

北桥苏

php thinkphp 事务回滚

如何在uni-app中使用fingerprint2实现游客设备标识

北桥苏

JavaScript 前端 uniapp fingerprint

phpOffice实现Excel表格导入的解耦方法

北桥苏

php PhpOffice/PhpSpreadsheet

Mac打不开后缀名为txt文件,显示文本编码中文不适用

互联网搬砖工作者

以PHP门面模式实现简单的邮件发送

北桥苏

php 设计模式 门面模式

Electron登录注册桌面应用源码+安装文件的打包方法

北桥苏

JavaScript Electron electron实战

什么是Bundle ID​

雪奈椰子

websocket测试工具的环境搭建与使用

北桥苏

Jmeter webscoket

如何注册appuploader账号​

雪奈椰子

搜索接口优化方案——幂集分词表

北桥苏

php elasticsearch thinkphp 搜索引擎;

没关系,前端还死不了

引迈信息

Vue 前端 低代码 JNPF

全国标杆!3DCAT实时云渲染助力深圳移动5G+智慧校园建设

3DCAT实时渲染

虚拟现实 虚拟仿真 实时渲染云

如何实现文件共享,文件共享的设置方法

镭速

为什么企业选择局域网即时通讯软件?局域网即时通讯软件哪家好?

WorkPlus

inBuilder低代码平台开发者分享课丨变量命名要义

inBuilder低代码平台

开发者 低代码 变量

网络中的数据传输模式有哪些-镭速

镭速

低代码平台:10分钟从入门到原理

这我可不懂

软件开发 低代码 JNPF

关于在 MySQL 排序中使用索引这件事!

江南一点雨

MySQL 数据库

mac屏幕分辨率调整用什么软件好呢?

真大的脸盆

Mac Mac 软件 屏幕分辨率调整

代码实现RabbitMQ死信队列的创建

北桥苏

php RabbitMQ 消息队列 死信队列

MySQL如何做如等级/成色等特殊顺序的排序

北桥苏

MySQL sql 排序算法

如何注册appuploader账号​

雪奈椰子

PHP如何通过rabbitMQ死信队列实现业务的延时/定时操作

北桥苏

php RabbitMQ

还在为项目初始化、依赖管理问题困扰?Dubbo Initializer 来了!

阿里巴巴云原生

阿里云 云原生 dubbo

如何使用appuploader制作描述文件​

雪奈椰子

宝塔中极速安装的PHP如何使用AMQP连接RabbitMQ

北桥苏

RabbitMQ AMQP php-amqplib

ActiveMQ 5.1支持JMS目的地监控和MSMQ桥_Java_Srini Penchikala_InfoQ精选文章