• Post Reply Bookmark Topic Watch Topic
  • New Topic

why do we need RMI, etc?  RSS feed

 
nobu taku
Greenhorn
Posts: 17
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
i've read much about rmi and other distrib technologies and wonder why we need code running on other machines. can't we just host everything on 1 machine? how likely do you need to have code running on multiple machines? The only reason i can find is horizontal scalability.
 
William Brogden
Author and all-around good cowpoke
Rancher
Posts: 13078
6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
RMI is also used to communicate between processes on the same machine - it is very heavily used in J2EE. Many real-world applications depend on multiple cooperating processes. One of the great virtues of Java is that the language designers recognized this and built in the capability from the start where other languages have had to graft on communication mechanisms.
Bill
 
Raj Chila
Ranch Hand
Posts: 128
Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by nobu taku:
i've read much about rmi and other distrib technologies and wonder why we need code running on other machines.


what would we do if a Branch or a company has to access the services / Data from the Head office?
what would we do if we want to integrate a supplier and a consumer companies to provide seamless operations?
(on a ligher note)..you would not probably be able to post this question .

Originally posted by nobu taku:
can't we just host everything on 1 machine? how likely do you need to have code running on multiple machines?.


Well thats one reason but not the only one and many angles to why we should not host every thing on one machine. from the distributed (RMI / CORBA etc) point of view, I could give some scenarios.

1. There are already some existing System in the company and we want to buy off the shelf another system (which would be a better economic decision) then you will have to provide some communication channel between the existing systems and the new off the shelf system.

2. There is a company which has the branches in many countries and all the branches have to access the common information at the head office...then we will have to go for some distributed technology like, EJB / RMI / CORBA etc.

3. Most of the times, we need to exchange some complex datatypes which is not possible otherwise if we dont use some technology like EJB / RMI or CORBA.

4. also sometimes two different types of systems need to talk to each other one developed in C and another in Java..then we have to use some kind of Middleware like CORBA, RMI or now SOAP (webservices).
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!