Sunday 5 August 2018

Introduction To JMS

JMS stands for Java Message Service, it is an open standard, that documents common way to create, send, receive and read an enterprise messaging system’s messages.

JMS documents, how the asynchronous communication between enterprise applications takes place.

Why JMS?
Prior to JMS specification, every messaging service vendor has their own implementation of messaging apis, it is quite difficult to a user to migrate from one messaging vendor to other. Developers end up in writing vendor specific implementation. JMS exists to address these issues.

By using JMS client, you can able to connect to any JMS compliant provider applications like Active MQ, Rabbit MQ etc.,

What are the different versions of JMS specification?
At the time of writing this tutorial, JMS 2.0 is the latest.

·       JMS 1.0.2b (June 26, 2001)
·       JMS 1.1 (April 12, 2002)
·       JMS 2.0 (May 21, 2013)

What are other products that implements JMS specification?
There are multiple products that implement JMS specification.

·       Amazon SQS with Java Messaging Library
·       Apache ActiveMQ
·       Apache Qpid
·       Oracle Weblogic
·       EMS from TIBCO
·       FFMQ, GNU LGPL licensed
·       FioranoMQ
·       IBM MQ
·       JBoss Messaging and HornetQ from JBoss
·       JORAM, from the OW2 Consortium
·       Lightstreamer JMS Extender
·       Open Message Queue, from Oracle
·       OpenJMS, from The OpenJMS Group
·       RabbitMQ, from Pivotal (JMS Client for RabbitMQ)
·       Solace JMS from Solace Systems
·       SAP NetWeaver Process Integration
·       SonicMQ from Aurea Software
·       SwiftMQ
·       Tervela
·       Ultra Messaging
·       webMethods from Software AG
·       WebSphere Application Server from IBM

What are the components of a JMS Application?
A JMS Application contains below 5 components.
a.   JMS Clients
b.   Non-JMS Clients
c.   Messages
d.   JMS provider
e.   Administered Objects

JMS Clients
These clients are JMS compliant ones, used to send/receive data from a JMS provider.

Non-JMS Clients
These clients use Message system native APIs, instead of JMS APIs.

Messages
Represents the piece of information, that is communicated between clients.

JMS Provider
It is a software that implement JMS specification. For example, Rabbit MQ and ActiveMQ are JMS providers.

Administered Objects
Administered objects are preconfigured JMS objects (For ex: Queues, Topics) created by an administrator for the use of clients.




Previous                                                 Next                                                 Home

No comments:

Post a Comment