Asynchronous Communication Between Components: Sachin Singh

Download Report

Transcript Asynchronous Communication Between Components: Sachin Singh

Asynchronous
Communication Between
Components
Presented By: Sachin Singh
Characteristics of Synchronous
Communication
 The
remote object must currently be
alive.
 The client must establish a connection
to the object.
 The client must invoke a method on the
object, and wait while the remote
object executes the method and returns
the result, if any.
Real Life Business Applications
 Applications
distributed across
heterogeneous platforms over the
network
 Networks/Components prone to failure
 Dynamic Business needs- scalable
architecture
 Requirement  “Loose Coupling”
Message Oriented Middleware


Rather than connecting directly to a remote object,
the client connects to the message-oriented
middleware and sends its message.
MOM middleware is an event-driven, asynchronous,
non-blocking and message-based communication
method that guarantees message delivery.
Quote

Every DAD needs a MOM.
--The Message Oriented
Middleware Consortium
Interpretation? ? ?
Every Distributed Application
Development needs a Message-
Oriented Middleware.
MOM Products
MSMQ (Microsoft Message Queuing)
 IBM MQSeries
 JMS (Java Message Services)

MOM Typical Architecture
The JMS Case

The Java Message Service (JMS) provides a
standard Java-based interface to the message
services of a MOM of some other provider.
JMS Characteristics

Messaging




loosely coupled communication
sender/receiver do not have to be active at the
same time
Sender/receiver only have to agree on message
format
Applications


no dependency on interfaces
components which may be disconnected (e.g.
mobile phones)
JMS API Architecture
• A JMS provider is a messaging system that implements the
JMS interfaces and provides administrative and control
features. J2EE platform release 1.3
• JMS clients are the programs or components, written in the
Java programming language, that produce and consume
messages.
• Messages are the objects that communicate information
between JMS clients.
• Administered objects are pre configured JMS objects created
by an administrator for the use of clients. (Ex destinations
and connection factories)
JMS – Publish/Subscribe
Messaging Domain
Advantages
High-level abstraction
physical location/ physical details hidden
Interoperability
Portability
Flexibility
Scalability
Reduces complexity
Disadvantages
 Implementations
are proprietary
 Component can overwhelm other
component
Thank You !!