Skip the navigation

Sidebar: Understanding Jini

By Carol Sliwa
September 6, 2004 12:00 PM ET

Computerworld - The Jini technology that Sun Microsystems Inc. created has been around for years, but many IT professionals may still be unfamiliar with how the technology works and what applications it's suitable for. Jennifer Kotzen, senior marketing manager at Sun Microsystems Inc., discussed the technology with Computerworld and provided some examples of how Jini is being used by corporations.

How It Works

  • Tracks services that are available. Jini lookup services and the discovery, join and leasing protocols that Sun created collectively allow a Jini-based system to automatically track the set of services currently available. The system knows what services are available to it, even though services are expected to come, go, move around and change while the system is running.

  • Identifies services, among those available, that satisfy client needs. Jini technology identifies services according to the Java interfaces they implement. That's how a Jini client recognizes services that it needs regardless of what the service is named, where it is located or who provided it. Services can register with additional attributes to help differentiate them from other services that provide the same capabilities.

  • Assembles services, as needed, into a running system. Jini technology uses mobile Java code to deliver services to clients as needed. Moving service code over the network and directly to the client eliminates the need to embed client-side service processing and network communications code into the client. That makes it possible to update clients without a developer having to reimplement them.

  • Coordinates interactions of distributed components. The JavaSpaces service, along with leasing, distributed security, event and transaction models, enable the coordinated interaction of distributed components in a Jini technology system. JavaSpaces provides distributed shared memory, workflow and asynchronous messaging capabilities. Leasing serves as a distributed garbage collection mechanism, and the Jini event and transaction models are designed to support event and transaction programming needs in dynamic, distributed environments. The Jini technology security model enables secure network communications.

Corporate Uses
The technology has several key applications for corporate IT. They include the following:

  • Edge Networking. Because distributed systems deployed beyond the data center are subject to a wider range of failure modes and are not readily accessible to a systems administrator, they must be able to automatically recover from failure at the network edge. They must also be easy to update and manage without systems administration support. Jini technology enables the creation of self-healing systems and allows new or updated services to be introduced without the need for a systems administrator to restart the system.

  • Compute Grids. Jini technology automatically accommodates the runtime addition, removal or loss of compute resources, which means that the grid keeps running even though a large grid network may operate in a near-constant state of partial failure. The JavaSpaces service can simplify the architecture of a compute grid engine by providing a mechanism through which compute resources can take work as they are ready for it.

  • Dynamic Systems Integration. Jini technology provides mechanisms needed to allow companies to keep systems up and running while integrating third-party services whenever they are available. It also can help a company simplify the integration of services that use a variety of communication protocols by isolating the client from the need to implement any of the multiple proprietary communications protocols that a service provider may use.

  • Dynamic Clustering. Jini-based systems can accommodate the addition, loss or removal of clustered services at runtime. Jini-based clusters scale up with the addition of service instances to be clustered, and they can be scaled down by removing unneeded service instances. The location, name, or provider of any service to be clustered can be changed without having to bring the cluster down.

  • Workflow/Message Switching. Jini technology, and especially its JavaSpaces service, facilitate the sharing of Java objects across a dynamic network. Workflow and message switching applications are two of the most common uses.

  • Ad-hoc Networking. Jini's ability to spontaneously bootstrap a network of services that come together in an ad-hoc fashion can make it useful in home networking, telematics systems and sensor networks

  • Dynamic Service Provisioning. Jini technology's support for straightforward service substitution and dynamic services delivery make it potentially useful to those creating dynamic service provisioning infrastructures.

Read more about App Development in Computerworld's App Development Topic Center.

Our Commenting Policies