|
|
|
Jini
Technology Services: JavaSpaces Technology
|
|
|
|
In today’s
distributed applications, there is a relatively high degree of coupling
between various network resources. This is undesirable because it makes
applications much harder to build and maintain. This situation is even worse when dealing with multiple
languages and platforms. As a result there is enormous complexity embedded in
resources such as knowing communication protocols, object models, etc. JavaSpaces introduces a shared dynamic
memory mechanism for Java Virtual Machines on the network.
|
|
The Java
platform creates a homogeneous platform where there previously was a
heterogeneous platform. The JavaSpaces technology goes farther to decouple
the providers and the requestors of network services. JavaSpaces technology
does this by delivering a unified environment for sharing, communicating, and
coordinating. JavaSpaces technology acts as a lightweight infrastructure
where multiple spaces may co-exist within one network. It helps federate a network of Java
Virtual Machines.
|
|
JavaSpaces
technology provides simple, dynamic object persistence. Persistence indicates that a collection of
data remains intact even if its source is no longer attached to the network.
The objects in JavaSpaces for example, remain available to other users even
if the source has temporarily disconnected from the network. This feature is
critical to keep distributed systems highly available.
|
|
The JavaSpaces
technology is a simple, fast, and unified mechanism for sharing,
coordinating, and communicating distributed resources, services, and objects
across a network. A JavaSpace system can be thought of as an event-driven
distributed cache with behavior transfer capabilities. This technology
extends well beyond the base functionality of a simple messaging system. In
fact, it facilitates alternative messaging mechanisms, including
asynchronous, store and forward, routed, filtered and others.
|
|
The service
interface of JavaSpaces technology provides facilities for writing, finding,
reading, removing, and generating/responding to events or objects in the
environment.
|
|
|