JMS - API Architecture



Description

JMS architecture is designed by Sun Microsystems as a part of Java Platform Enterprise Edition, which makes Java Message Service (JMS) to develop business applications asynchronously and provides support for wide range of enterprise messaging products. JMS supports two types of messaging domains; one is point-to-point messaging domain and another one is publish-subscribe messaging domain. We will be studying about these topics in the upcoming chapters.

Architecture of JMS API

The below diagram depicts architecture of JMS API −

JMS Architecture

JMS API uses an administered tool to bind the administered objects such as connection factories and destinations, to the Java Naming and Directory Interface (JNDI) name space. JNDI is a Java API used to find the data with particular name. A JMS client looks for the administered objects in the JNDI namespace to create logical connection with these objects and destination by using the service provider.

JMS API includes following components −

  • JMS Provider − It is message oriented middleware software that provides JMS interfaces to administrate JMS application and also defines messaging features to the clients.

  • JMS Clients − JMS clients use JMS API to send and receive messages.

  • Messages − It communicates with clients and exchanges the data between JMS clients to the design of a JMS application.

  • Administered Objects − These are preconfigured objects, generated by an administrator to use with JMS clients. There are two types of administered objects; namely destination and connection factory. A destination is an object, that target its messages by JMS clients and receives the messages from the destination. The connection factory is an object, which establishes the connection between JMS client and Service provider.

Advertisements