HornetQ
Encyclopedia
HornetQ is an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 asynchronous messaging project from JBoss
JBoss
JBoss Application Server is an open-source Java EE-based application server. An important distinction for this class of software is that it not only implements a server that runs on Java, but it actually implements the Java EE part of Java...

. It is an example of Message Oriented Middleware
HornetQ is an open source project to build a multi-protocol, embeddable, very high performance, clustered, asynchronous messaging system.
The HornetQ project was the brain-child of Tim Fox, and was launched on 24 August 2009, during much of its development the HornetQ code-base was developed under the name JBoss Messaging
JBoss Messaging
JBoss Messaging is the JBoss enterprise asynchronous messaging system. It supersedes JBoss MQ as the default Java Message Service provider in JBoss Application Server 5....

 2.0.
The HornetQ project is licensed using the Apache Software License v 2.0.
Tim Fox led the project until HornetQ 8 October 2010, when he stepped down as project lead to pursue other projects. HornetQ is currently led by Clebert Suconic with core engineers Andy Taylor, Howard Gao and Jeff Mesnil.
As of 4-2-2010 HornetQ is the SPECjms2007 record breaker.

It has the following relevant features:
  • Supports STOMP protocol for cross language clients
  • 100% JMS complaint
  • AIO (over Linux)/NIO (over any OS) based high performance journal.
  • Clustering for scalability and reliability
  • Supports Master/Slave architecture for fault tolerance
  • Supports discovery groups for dynamic node clusters
  • Core Bridges to connect to other HornetQ servers (over unreliable WAN links)
  • JMS Bridges to connect to other JMS compatible servers
  • Diverts to reroute traffic without modifying application code
  • Paging to support messages which size exceeds the available RAM
  • Large message support to enable file messaging
  • XA and JTA transaction support
  • Application Server integration using the JCA standard (allows MDBs too)
  • High performance Netty
    JBoss Netty
    JBoss Netty is a New I/O client-server framework for the development of Java network applications such as protocol servers and clients. The asynchronous event-driven network application framework and tools is used to simplify network programming such as TCP and UDP socket servers. Netty includes...

     NIO
    New I/O
    New I/O, usually called NIO, is a collection of Java programming language APIs that offer features for intensive I/O operations. It was introduced with the J2SE 1.4 release of Java by Sun Microsystems to complement an existing standard I/O. NIO was developed under the Java Community Process as JSR...

    connector over TCP, SSL and Servlet modes (for messaging between firewalls)
  • JMX based management
  • Last Value Queues
  • Filters and wildcard support
  • Security features integrated with JAAS
  • Simple XML configuration

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK