RMI reliability in RPC-like use cases

A

Alan Cyment

Hi all - an RMI question here

Is RMI a reliable protocol? If I invoke a remote method (a method on a
remote object) and get an exception stating some kind of
non-functional error (communications or whatever), can I be 100% sure
the other party (server) didn't "process the request"? Reformulated:
can I be sure 1-step-long (only one action/command) transactions are
ACID when using RMI?

TIA,
Alan Cyment
 
E

Esmond Pitt

RMI implements 'at-most-once' semantics. You can be assured that the
call has executed at most once, possibly zero times. By astute analysis
of the actual RemoteException you can determine whether it occurred
while sending the call from the client, receiving it at the server,
sending the result from the server, or receiving it at the client. In
the first two cases the call hasn't executed, in the second two it has.
Sun don't explicitly document the respective conditions, but they're
covered in my book - see below.

EJP
http://www.rmiproxy.com/javarmi
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,731
Messages
2,569,432
Members
44,834
Latest member
BuyCannaLabsCBD

Latest Threads

Top