ActiveMQ VS HornetQ

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的支持

你可能感兴趣的:(spring,应用服务器,jms,activemq,配置管理)