您的位置:首页 >> 编程开发 >> Java >> J2EE >> 正文
RSS
 

Introducing JAVASPACES @ JDJ

http://www.rdxx.com 05年08月10日 20:18 Java频道 我要投稿

关键词: JDJ , Java , UC , NT , CES , CE , ASP

JavaSpaces is a powerful Jini service specification from Sun Microsystems that provides a simple yet powerful infrastructure for building distributed applications. The JavaSpaces specification defines a reliable distributed repository for objects, along with support for distributed transactions, events and leasing. In the JavaSpaces programming model, applications are viewed as a group of processes, cooperating via the flow of objects into and out of "spaces."

Inspired by "Tuple-Spaces"
JavaSpaces is based on the concept of "tuple-spaces" first described in 1982 in the Linda programming language and system originally propounded by Dr. David Gelernter at Yale University. The public-domain Linda system is a coordination language for expressing parallel processing algorithms without reference to any specific computer or network architecture and provides interprocess coordination via virtual shared memories or tuple-spaces that can be accessed associatively.

The tuple-space model is especially useful for concurrent algorithms. Although JavaSpaces technology is strongly influenced by the Linda system, it differs from Linda in several ways - such as Java's richer typing, object orientation, subtype matching and transactional support spanning multiple spaces, leasing and events.

JavaSpaces in Today's Networked World
Although the programming model and concepts underlying JavaSpaces may at first seem abstract and theoretical, JavaSpaces does in fact provide an elegant and practical approach to solving common real-world scenarios in today's increasingly networked world. Distributed, collaborative and parallel applications can be solved using a JavaSpaces-based solution since JavaSpaces lends itself to applications such as trading services, reservation systems, online ordering systems, online auction systems, large computation-intensive jobs, workflow systems, mobile offices and agent technology.

A Distributed Algorithm as a Flow of Objects Between Spaces
Any application developed using JavaSpaces technology would need to be modeled as a flow of objects through one or more spaces. JavaSpaces represents a fundamentally different approach from that of the more traditional invocation of methods on remote objects or direct exchange of information between processes. With the method-invocation approach, specific remote interfaces are needed for each operation. With the JavaSpaces' flow-of-objects approach, on the other hand, only one interface is required: namely, the JavaSpaces interface (from the package net.jini.space).

What's a Space?
The term space refers to an implementation of the JavaSpaces service specification. Like the rest of the Java technology, there's a separation between the specification and its implementation of the specification. A number of vendors may provide implementations. A JavaSpaces client is expected to receive identical service and functionality from all such space implementations, though their internal designs may vary. A space, then, is a particular implementation of the specification and represents a persistent object exchange "area" via which remote processes can coordinate their actions and exchange data. The space thus provides a ubiquitous, cross-platform framework for distributed computing.

上一页 下一页

 
 
标签: JDJ , Java , UC , NT , CES , CE , ASP 打印本文
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站