Since its release in late 1997, the JMS API has established itself as a core component in the Java Enterprise suite. A number of vendors are offering implementations of JMS with one of the latest coming from Ashnasoft Corporation. Although new to JMS, Ashnasoft has brought its experience and a reputation from JTurbo (sold to New Atlanta last year) to the scene.
First released in November 2001, the current version (released in February) is AshnaMQ 2.0 Standard Edition. AshnaMQ is a JMS 1.0.2 implementation written purely in Java. It's a product that Ashnasoft claims offers better performance and higher reliability than their competitors. The performance and scalabitity benchmarks and test harness are available from the Ashnasoft Web site. It supports the full range of Java editions - J2SE, J2EE, and J2ME - with good support for mobile messaging solutions. A server-based implementation, it offers everything you'd expect from a JMS implementation, and a bit more.
Installation of AshnaMQ is painless, to say the least. I had it installed and was running one of the sample programs before you could say "Java Message Service." Well, perhaps a slight exaggeration there. But it really is just a case of starting the JMS server, executing the appropriate provided script to set up the environment, and running one of the examples. There are a host of well-commented examples to cover all the core messaging options, and there are also examples of integration with servlets, JSPs, and EJBs, plus a midlet example.
Two of the more tangible features of AshnaMQ that impressed me were the administration GUI and bundled documentation. The administration tool certainly makes AshnaMQ "easy to administer" (as it says on the front of the box). There's also a command-line interface for the power user in you, but the administration GUI was my preferred option. It enables you to easily create/delete topics and queues on the server, and also control the security aspect of messaging through setting up user accounts and access control lists.
The main highlight for me was the "development tool" feature of the admin GUI. It allows you to explore/play around. From the screen shown in Figure 1, I was able to dynamically create connections, sessions, and, subsequently, multiple senders, receivers, and browsers of messages for sending/receiving/examining messages. Also, a facility to monitor all connections, topics, and queues is provided. For example, you can see how many senders/receivers there are for a particular queue.
The documentation included with the installation provides quality manuals for the different aspects of using AshnaMQ, from the administration side of the fence to the programming. It's a rich source of examples that includes guidance for integrating with EJB/servlet/JSP engines.
AshnaMQ is good package. It may be lacking the maturity of some of its competitors who have been around for years, but it does claim to be superior in some departments. It offers extensive quality documentation with enough examples to get you started on whatever aspect of the JMS package you want to use. It's so easy to install and use through the admin GUI that it's well worth downloading the free Developers Edition and giving it a bash.
39111 Paseo Padre Pkwy, Suite 213
Fremont, CA 94538
Phone: 510 792-6335
Fax: 510 792-6351
E-mail: [email protected]
Platforms: Windows NT/2000, Solaris 2.6, 7,
and 8, Linux (Red Hat 6.2 or later)
Server: Runs best on JDK 1.3.1
Regular clients: Can run on JDK 1.2.2 and higher
Mobile clients: Runs on J2ME Wireless Toolkit 1.0.3
Platform: Windows 2000
Processor: Viglen PII 700