Java Reference
In-Depth Information
servers (the server manages both the data and the processing) or fat clients
(the server manages only the data). It is a matter of how many clients share
common data and operations on them and has implications for the system
scalability, portability and efficiency.
An evolution of the client
server model is the three-tier model (Shan and
Earle 1998). The main difference is that the system functionality is com-
pletely separated from the user interface management (the client) and from
the data persistence management (the database server) and resides in a
middle layer called the application server. The resulting application is easily
scalable. As the client is lightweight, moderate computing power is required,
and it can be customized and ported to other platforms. The system func-
tionality can be upgraded by replacing or modifying the application server
without affecting the clients. The data persistence management can easily
be ported to other platforms, since it is clearly separated from the applica-
tion server.
The broker-based model
Due to advances in networking technology, increasingly heterogeneous
distributed computing resources are becoming available on the internet. A
broker represents a mediation level between clients and servers. According to
the information that it manages, the broker acts as a domain name server (it
knows the name and internet location of a group of server objects), match-
maker (it knows the service offered by the server objects), facilitator (it
knows the policies and protocols to access the services of the server objects)
or mediator (it offers new services as a composite of other servers' services).
Distributed computing paradigms
Information sharing across a network assumes several forms at different
levels of abstraction. In this context, abstraction means the capability of
accessing distributed resources in a transparent way with regard to their
physical location, data format, structure, implementation language and
execution support.
The stub
skeleton paradigm
This distribution paradigm consists in implementing a distributed address
space where client and server objects can exchange messages, i.e. method
invocations and return values. This is accomplished by means of two
ancillary objects called the “stub” and the “skeleton”. The stub is a surrogate
(proxy) of the server and resides in the client's address space. It offers the
same set of operations (called the “interface”) as the remote server. The
client invokes the stub's operations as if it were the server itself. The stub is
in charge of marshalling the client's request and transmitting it through the
Search WWH ::

Custom Search