Rmigood 2
Rmigood 2
CS-328
Internet Programming
In the Good Old Days...
My Machine
My Object
Today’s World...
Network and Distributed Objects
My Machine Remote
Machine
Local
Remote
Objects
Objects
Why not just use sockets?
sockets programming is tedious
error prone for implementing complex
protocols
best left to “the experts”
Java RMI allows...
provide user with a “thin client “
allows good performance on lowend workstations
run server on high end hardware
maximize $ investment over many clients
server remote from client
Client Server
Stubs Skeletons
Remote Remote
Reference Reference
Transport
The General Idea
Instantiate an object on another machine
Invoke methods on the remote object
The parts...
Client - user interface
Server - data source
Stubs
marshals argument data (serialization)
unmarshals results data (deserialization)