Difference between JMS and RMI

JMS aka Java Messaging Service and RMI aka Remote Method Invocation, are both used to connect pieces of distriubted application in a Java Enterprise Application, but they follow very different approaches. Here is the difference between JMS and RMI:

  • RMI uses synchronous mode of operation, whereas JMS can be configured to work synchronously as well asynchronously.
  • When a method call is made via RMI, the caller blocks until the procedure completes. In contrast, message oriented system (JMS) continue processing as soon as the message is dispatched.
  • In RMI, when multiple components exist each element of the system has to create an independent connection to each other component, leading to many-to-many mapping between system components. Whereas, in JMS, as all the components in the system communicate via a centralized server the overall architecture is a simpler one-to-many relationship (messaging server to system components).
  • Using the synchronous technique RMI leads to more tightly coupled systems and using the asynchronous technique JMS messaging results in loosely coupled systems.

Hope you find the information presented here useful and informative. Please leave your footprints in comments section below for any queries, suggestions or feedback.

  1. Hey, your site is rather interesting.. Additionally it was something I could definitely refer to Ill constantly trip to your website thus i i do hope you continue making fun and interesting posts just like it ^_^

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">