`
longgangbai
  • 浏览: 7332326 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

ActiveMQ  VS HornetQ

ActiveMQHornetQ的简介:

      ActiveMQ Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。   
     
HornetQ是一个支持集群和多种协议,可嵌入、高性能的异步消息系统。HornetQ完全支持JMSHornetQ不但支持JMS1.1 API同时也定义属于自己的消息API,这可以最大限度的提升HornetQ的性能和灵活性。在不久的将来更多的协议将被HornetQ支持。
ActiveMQHornetQ的比较:

特点

HornetQ2.0GA

ActiveMQ5.3.0

客户端语言

JavaJMS1.1 Stomp

Java,C#,Cjms1.1,jms1.2

应用协议

STOMP

OpenWire,Stomp REST,WS Notification,XMPP,AMQP

支持的传送协议

TCP,SSL,HTTP

In-VM,TCP,SSL,NIO,UDP,JGoup,JXTA

监测jms消息

支持

支持

消息目标队列的分类

使用Diverts(排他和非排他)可以使用过滤相匹配消息被转移

虚拟目标队列,镜像队列(队列自动复制)和复合目的地队列

集群

1.       发布消息通过广播(UDP组播)或固定客户端和服务端

2.       支持负载均衡

3.       消息的重分发:发送前,配置无消费者对消息的重新分发的参数。

4.       容错机制(failover:主备服务器(每一个主服务器只能有一个冷备份服务器)

5.       高可用性:异步日志复制从主到备(快)或者通过共享文件系统的共享存储(有没有需要复制)

1.       发送消息通过广播(UDP组播或者零配置)或者固定的客户端和服务端。

2.       支持负载均衡

3.       容错机制(failover:主备服务器(每一个主服务器只有一个备服务器)

4.       静态或者动态的发布。

5.       针对消息的broker的重分发。

6.       高可用性:从主服务器异步日志到备份服务器(快),或者通过JDBC通过共享文件系统存储(慢)或者共享存储(有没有需要复制)

JMX监控和管理

支持,包含一个web控制台

支持

JMSJMSBridge的方式

支持,HQHQHQ到任何JMS1.1的服务器。一次只能提供一次,并保证在HQHQ bridges.

 

在集群中消息组和排他性消费。

支持

支持

性能(Performance)测试工具

SpecJMS 压力测试

JMeter的性能测试

持久化

仅支持异步日志系统(journal),提供两种方式:

1.       Java NIO

2.       linux AIO(仅支持linux2.6以上的版本)

支持多种方式:

1.       KahaDB(比较好的可扩展性,更短的恢复时间。)

2.       AMQ消息存储(快)

3.       JDBC数据库(比较慢)

安全

身份验证和授权的JAAS的配置文件中定义。7中不同的权限。

JAAS的身份验证和配置文件授权。3中不同的权限(读,写,管理)

BlobLarge消息的支持

支持

支持

调度传递(Schedule delivery

支持

支持(使用Schedule CronParser

消息转换(xml转换为对象)

支持,但是仅仅在HQHQ Bridge之间。

支持(其中Spring提供具体的实现方案)

异步发送

支持

支持

Acknowledge优化

前置Acknowledge

批量Acknowledge,异步消息传递

生产者流程控制

支持(仅仅在window

支持(仅仅在window

慢消费消息的处理

支持

支持

拦截器架构

支持,在包一级传入的数据库捕获

支持,使用一个拦截器栈捕获传入的消息

通配符的支持(WildCard

支持

支持

XPATH的支持

不支持

支持

重新传递策略

延迟交还和DLQ

DLQ,丢失的消息将无法在交付。

消息优先级和权重的设置

不支持

支持

命令代理

不支持

支持在ActiveMQ4.2以上

AMQP支持

不支持

支持

SOAP协议Web服务的支持

不支持

支持,使用Apache AxisCXF

JEE应用服务整合

支持,使用JCA RA

支持,使用JCA RA

超时消息的目标地址

支持

不支持

检查重复的消息

支持

不支持

集群中服务端的负载均衡

支持

支持

客户端负载均衡(loadbalance

支持(随机和循环)

不支持

客户端容错机制(failover)

支持,自动故障转移和应用管理模式

支持,随机和循环使用故障转移协议

Vm传输

支持

支持

Ajax的支持

未知

支持

Spring的支持

分享到:
评论
4 楼 zhuyoulong 2013-04-26  
结论呢,哪个好?
3 楼 aone 2013-02-25  
我在其它网站只了解到,通过jboss as的web console,有一个管理hornetq的界面,它是嵌入在jboss as里的,如果没有使用jboss as的话hornetq自身是没有web console的。
不知道我理解的是否正确,请指点。
mashiguang0833<at>sina dot com
2 楼 aone 2013-02-25  
你好,文中提到hornetq包涵一个web控制台,请教关于此控制台的资料,如访问地址,都能干什么。或者您告诉我在哪儿有相关文档,我正着急这一块儿,如不吝赐教,不胜感激,
1 楼 virusfu 2012-01-09  
很详细啊,谢谢啊

相关推荐

    ActiveMQ和HornetQ性能对比

    ### ActiveMQ与HornetQ性能对比分析 #### 概述 本文旨在通过一系列测试数据对比分析ActiveMQ与HornetQ在不同消息大小及数量下的性能表现。测试环境为相同的硬件配置,确保了测试结果的公正性。通过对比两者的发送...

    一个jms activemq Topic 消息实例

    一个jms activemq Topic 消息实例 关于jms JMS 是接口,相当于jdbc ,要真正使用它需要某些厂商进行实现 ,即jms provider 常见的jms provider 有 ActiveMQ JBoss 社区所研发的 HornetQ (在jboss6 中默认即可以...

    spring-boot-artemis-clustered-topic:一个示例项目,以集群模式使用主题(发布-订阅)演示通过Apache ActiveMQ Artemis 2.4.0在两个spring boot应用程序的生产者和使用者之间的异步通信。

    介绍Apache ActiveMQ Artemis是ActiveMQ / HornetQ / Apollo的组合功能集。 它提供了一种非阻塞的体系结构,以实现出色的性能。 项目配置为在local mode (嵌入式服务器)和clustered mode (不同的节点)上运行。...

    HornetQ_User_Manual.pdf

    HornetQ是Jboss提供的开源消息服务软件,由Red Hat公司捐赠给Apache软件基金会,并在之后成为了Apache ActiveMQ的前身。HornetQ作为一款高性能、可伸缩的消息服务软件,它支持多种客户端访问协议,包括但不限于Java...

    支付宝之所以牛逼的原因:来看内部架构剖析

    关于消息中间件,你应该听说过JMS规范,以及一些开源实现,如ActiveMQ和HornetQ等。Metamorphosis也是其中之一。Metamorphosis的起源是我从对linkedin的开源MQ--现在转移到apache的kafka的学习开始的,这是一个设计

    activemq-artemis:Apache ActiveMQ Artemis的镜像

    ActiveMQ阿耳s弥斯 该文件描述了一些最低的“需要了解的东西”,以开始在该项目中进行编码。 资源 有关修改代码,构建项目,运行测试,IDE集成等的详细信息,请参见《 。 建立状态 建立状态: 建立ASYNC IO库 ...

    【JMS接收端需要用到的jar包】

    2. **activemq-client.jar** 或 **hornetq-jms-client.jar**:这些是具体JMS实现的客户端库,如Apache ActiveMQ或HornetQ。它们提供了连接到JMS服务器的具体实现,支持创建会话、消费者和生产者,并实现了JMS API的...

    Notify架构与原理.pdf

    4. **WHY NOT JMS**:尽管存在如ActiveMQ和HornetQ等成熟的JMS开源产品,但Notify针对大规模分布式系统的事务支持、订阅者集群和性能进行了优化。例如,它不支持两阶段提交协议,而是选择了更适应大规模分布式系统的...

    ejb2.0消息驱动bean的开发(JBOSS4.0.4.GA 环境)

    而“工具”标签可能指的是使用到的开发工具,如Eclipse或NetBeans,以及JBOSS服务器和JMS提供者,如ActiveMQ或hornetQ。 **详细知识点**: 1. **EJB2.0消息驱动Bean(MDB)概念**: - MDB是无状态的组件,专门...

    apache-artemis包

    由jboss捐献的HornetQ的衍生版本,可能作为下一代ActiveMQ的存在。 Artemis 服务器 选择Artemis的原因开源、高可用性、Java编写、高性能的日志保证持久化消息像非持久化消息一样拥有出色的表现、功能齐全、简洁的...

    十种MQ的技术选型详细对比.docx

    在本文档中,我们将对以下十种消息队列(Message Queue,简称MQ)系统进行详细的技术选型对比:ActiveMQ、RabbitMQ、RocketMQ、Joram、HornetQ、OpenMQ、MuleMQ、SonicMQ、ZeroMQ以及Kafka。这些系统在企业级应用中...

    Java Message Service中文完整版

    - **供应商实现**:许多厂商提供了符合JMS规范的实现,如IBM MQ、ActiveMQ、HornetQ等。 - **洁净室实现**:JMS规范允许开发者基于规范创建自己的实现,只要遵循规范的规定即可。 #### 五、许可与使用限制 根据...

    各种消息队列对比

    本对比文档主要针对以下消息队列产品进行分析:ActiveMQ、RabbitMQ、RocketMQ,同时也提及了Joram、HornetQ、OpenMQ,以及一些相关技术标准,如AMQP(Advanced Message Queuing Protocol)、JMS(Java Message ...

    c-stomp:STOMP是用c编写的STOMP客户端,是简单(或流式)文本定向消息传递协议。 简单的Api使用

    c-stomp是一个C库,用于编写STOMP协议,以便与ActiveMQ,RabbitMQ,HornetQ,ActiveMQ Apollo和其他支持stomp的消息传递协议一起使用。 例子 /* For Connecting to Stomp */ cstmp_session_t *consuming_sess = ...

    stomp-rs为Rust编程语言提供了完整的STOMP 1.2客户端实现。-Rust开发

    这使得用Rust编写的程序可以与消息队列服务进行交互,例如ActiveMQ,RabbitMQ,HornetQ和OpenMQ。 连接订阅发送确认(自动/客户端/客户端个人)交易收据断开心跳信号踩踏程序的API尚不稳定,并且可能在v1.0之前波动...

    mq产品对比

    这些产品包括:ActiveMQ、RabbitMQ、RocketMQ、Joram、HornetQ、OpenMQ、MuleMQ、SonicMQ以及ZeroMQ。我们将从多个维度对这些产品进行比较,以便于读者更好地理解不同MQ产品的特性和适用场景。 #### 二、重要指标...

    JMS相关的Source

    在Jboss中,JMS服务通常通过 HornetQ 或 ActiveMQ 这样的消息代理实现。HornetQ是JBoss早期版本内置的消息中间件,而ActiveMQ则是在较新版本中使用的。这些消息代理负责接收、存储和转发消息,使不同的应用程序能够...

    JBOSS开发人员指南

    7.2 HornetQ与ActiveMQ JBoss早期版本使用HornetQ作为内置消息服务器,后来转向了ActiveMQ。开发者需要熟悉这两个组件的使用和配置。 八、性能优化与监控 8.1 资源调优 通过调整内存设置、线程池大小、连接池参数...

    消息中间件在分布式系统中的作用介绍

    常见的实现JMS规范的消息中间件产品包括ActiveMQ、RocketMQ、RabbitMQ、HornetQ等。每种消息中间件各有其特点和适用场景,开发者可以根据项目的具体需求和特性来选择合适的中间件产品。 消息中间件在分布式系统中的...

    消息中间件在分布式系统中的作用.pptx

    消息中间件在分布式系统中...市场上有多种实现了JMS规范的消息中间件产品,如ActiveMQ、RocketMQ、RabbitMQ和HornetQ等。选择合适的中间件时,需要考虑性能、稳定性、易用性、社区支持以及与现有技术栈的兼容性等因素。

Global site tag (gtag.js) - Google Analytics