dcsimg
JMS or RPC? When should you use JMS Point-to-point...
6 posts in topic
Flat View  Flat View
TOPIC ACTIONS:
 

Posted By:   Nick_Minutello
Posted On:   Tuesday, March 6, 2001 01:57 PM

JMS or RPC? When should you use JMS Point-to-point topology over standard RPC (RMI/CORBA)?


I have recently seen more and more architects pushing the use of MOM for what are generally synchronous operations. The design generally takes the form of a request and response queue which two processes can then communicate over.


It seems to me that this is not the correct usage for MOM--but, am I missing some good reasons why you would want to do this? What are the advantages of P2P over RPC in a synchronous context?

Re: JMS or RPC? When should you use JMS Point-to-point...

Posted By:   Sandeep_Shilawat  
Posted On:   Tuesday, May 26, 2009 09:58 PM

Simple answer to your question will be keeping your options open if you want to expand the app interface functions or for future EAI stuff. You may be right about MOM usage

Re: JMS or RPC? When should you use JMS Point-to-point...

Posted By:   Anonymous  
Posted On:   Tuesday, April 18, 2006 08:54 AM

point to point is used when you know who the receiver is in advance

Re: JMS or RPC? When should you use JMS Point-to-point...

Posted By:   jack_kallis  
Posted On:   Thursday, April 8, 2004 02:30 AM

The question is really very silly. u idiot.

Re: JMS or RPC? When should you use JMS Point-to-point...

Posted By:   kunal_khanna  
Posted On:   Wednesday, August 1, 2001 09:25 AM

Hi Nick,

Let's summarise....



1. RPC is Synchronous, JMS is not


2. In RPC a thread blocks on I/O,this leads to an overhead on memory,while JMS communication is not realtime,hence the connection to receiver is not established, but the message is posted to relevant Queue/Topic



Hence, instead of request response paradigm for RPC, JMS posts messages on Topics/Queues on the server,while the receivers Listen to them using MessageListener Interface, thus eliminating the need for a requesting thread blocking on I/O waiting for response.


Kunal

Re: JMS or RPC? When should you use JMS Point-to-point...

Posted By:   Ziv_Feferman  
Posted On:   Sunday, June 17, 2001 11:47 PM

...The design generally takes the form of a request and response queue...

Can you provide references where this pattern is demonstrated or explained? This is exectly what I need to do.

Re: JMS or RPC? When should you use JMS Point-to-point...

Posted By:   Suresh_Rangan  
Posted On:   Friday, March 16, 2001 10:03 AM

Basically RPC mechanism forces synchronization of the communicating process on the call message and the return message, That is why it is classified as a synchronous communication mechanism. Commonly used methods for exchanging information between two applications include peer-to-peer and Remote Procedure Calls (RPCs), CORBA, COM, and RMI. These methods have had their place in tightly coupled computing models; CORBA and COM both bind distributed objects tightly together. Tight coupling itself introduces further problems; for example, it is harder to make changes in one component without introducing side effects in others, and version change and version tracking become a headache. These methods also require information to be reduced to a block of data before the data is passed. And data blocks are by themselves not self-describing. Developers must embed descriptions of data structure and content in the code — this means longer development times, extra lines of code, and large portions of code devoted to validating information contained in the data.


Distributed architectures also introduce problems for components that must communicate because components can fail in several ways by:
1. Going offline without warning
2. Terminating unexpectedly
3. Not responding to a request quickly enough
4. Messaging services, especially MOM and JMS, are designed to address these problems


MOM is preferred to other communications services, especially RPCs, for corporate intranet and web-based messaging.


1. MOM is primarily used to support deferred communication, whereas peer-to-peer and RPCs are used to support synchronous communication. With RPC, the receiver must be online. But with MOM, the sender can send messages to receivers (e.g., servers) that are down at the time the message is sent.


2. MOM decouples resources. It promotes building loosely coupled systems and thus helps developers build highly modular systems. Component reuse and reliability are increased in so far as a failure in one component is less likely to affect another.


3. MOM views messages as events rather than as method calls in case of RPCs. Clients can send and receive events (messages) via APIs that MOM provides. Applications or application components communicate with each other using MOM.

About | Sitemap | Contact