23.07.2013 Views

O'Reilly - Java Message Service

O'Reilly - Java Message Service

O'Reilly - Java Message Service

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Java</strong> <strong>Message</strong> <strong>Service</strong><br />

The most important new feature in Version 3.0 is SonicMQ's Dynamic Routing<br />

Architecture (DRA), which is targeted at large-scale B2B infrastructures. DRA provides<br />

fault-tolerant shared queues within a cluster, allowing parallel queue access, load<br />

balancing and failover, and the ability to share queues across application domains.<br />

An XML message type extends the Text<strong>Message</strong>, allowing a message to be dealt with as<br />

either straight text or as a DOM tree. Lazy parsing means the built-in XML parser is only<br />

invoked if you ask for the message in DOM format.<br />

SonicMQ provides support for HTTP firewall tunneling ans SSL. The HTTP tunneling<br />

supports client-side proxy servers as well as server-side reverse-proxy servers. HTTP 1.1,<br />

HTTP 1.0 Keep-Alive, and vanilla HTTP 1.0 connections are automatically negotiated at<br />

connection time based on the best available protocol. Authentication is supported with<br />

simple usernames and passwords; PKI server authentication using digital certificates is<br />

also supported. Access control for administered objects is also provided. Using<br />

hierarchical topic trees, ACLs may be administratively defined at any level of the topic<br />

tree. Both positive and negative permissions may be granted for groups of users and<br />

individual users. SonicMQ also includes a unique <strong>Message</strong>-level payload encryption.<br />

Clustered message servers are configured through centralized management tools. <strong>Message</strong><br />

traffic is routed across geographically dispersed message servers using TCP, SSL, or<br />

HTTP.<br />

Automatic Flow Control allows for smooth delivery of messages under heavy load. There<br />

are also client APIs for C/C++ and ActiveX/COM+ for integration with non-<strong>Java</strong> systems.<br />

Also available is a multiclient performance and scalability test harness, which allows you<br />

to do your own vendor-to-vendor comparisons. Currently SonicMQ is the only JMS<br />

vendor offering a performance comparison tool that scales beyond a handful of clients.<br />

9.2.2 Next Version<br />

The next version will include the JMS XA interfaces and two-phase commit, and a new<br />

deployment option based on an IP multicast architecture. In addition, the next version of<br />

SonicMQ will include support for the EJB message-driven bean discussed in Chapter 8. As<br />

always, each new version will include continued performance and scalability<br />

enhancements.<br />

9.3 Fiorano: FioranoMQ<br />

Fiorano's product was originally the Fiorano Middleware Platform. It was completely<br />

rewritten in <strong>Java</strong> and renamed FioranoMQ, which first shipped in 1998. Fiorano now<br />

offers two different JMS products: FioranoMQ Multicast and FioranoMQ Enterprise.<br />

9.3.1 FioranoMQ Multicast 4.5<br />

FioranoMQ Multicast is compliant with JMS 1.0.2 and supports the pub/sub JMS<br />

messaging model. The server and clients are written in <strong>Java</strong> and therefore run on any<br />

platform with a JDK 1.1 or higher Virtual Machine.<br />

135

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!