Jini
This article needs additional citations for verification. (December 2013) |
Stable release | 3.0.0 (October 5, 2016[1]) [±] |
---|---|
Website | http://river.apache.org/ |
Jini (pronounced like genie i.e. /ˈdʒiːni/), also called Apache River, is a network architecture for the construction of distributed systems in the form of modular co-operating services.
Originally developed by Sun, Jini was released under an open source license (Apache license).[2] Responsibility for Jini has been transferred to Apache under the project name "River".[3]
History
Sun introduced Jini in July 1998. In November 1998, Sun announced that there were some firms supporting Jini.
The Jini team at Sun Microsystems has always stated that Jini is not an acronym. Ken Arnold has joked that it means "Jini Is Not Initials", making it a recursive anti-acronym,[4] but it has always been just Jini. The word 'jini' means "the devil" in Swahili; this is borrowed from the Arabic word for a mythological spirit, originated from the Latin genius, which is also the origin of the English word 'genie'.
Jini provides the infrastructure for the Service-object-oriented architecture (SOOA).
Using a service
Locating services is done through a lookup service. Services try to contact a lookup service (LUS), either by unicast interaction, when it knows the actual location of the lookup service, or by dynamic multicast discovery. The lookup service returns an object called the service registrar that can be used by services to register themselves so they can be found by clients. Clients can use the lookup service to retrieve a proxy object to the service; calls to the proxy translate the call to a service request, performs this request on the service, and returns the result to the client. This strategy is more convenient than Java remote method invocation, which requires the client to know the location of the remote service in advance.
Limitations
Jini uses a lookup service to broker communication between the client and service. This appears to be a centralized model (though the communication between client and service can be seen as decentralized) that does not scale well to very large systems. However, the lookup service can be horizontally scaled by running multiple instances that listen to the same multicast
See also
- Ken Arnold, one of the original Jini architects
- Juxtapose (JXTA)
- SORCER (SORCER)
- Java Management Extensions (JMX)
- Simple Network Management Protocol (SNMP)
- Zero Configuration Networking
- OSGi Alliance
- Service Location Protocol
- Universal Plug and Play (UPnP)
- Device Profile for Web Services (DPWS)
- Tuple space
References
- ^ "Releases". Retrieved 12 June 2017.
- ^ Sun releases Jini with open-source license
- ^ River project depot at Apache.org
- ^ FAQ for JINI-USERS Mailing List - What does "Jini" stand for?
External links
- Archived 2011-08-06 at the Wayback Machine
- Apache River Project
- Citations from CiteSeer
- Article "Jini: Out of the Bottle and Into the Box" by Daniel H. Steinberg
- Project Rio
- Jan Newmarch's Guide to Jini Technologies
- Newton Open source Jini & OSGi based distributed component framework
- Bantam - an open-source web framework for distributed systems