|
ABSTRACT
From the Book: PREFACE: Over the next decade the computing landscape will change dramatically as devices become ubiquitous, network-connected, and ready to communicate. As the landscape changes, the way in which we design and build software will change as well: The distributed application (one that involves multiple processes and devices) will become the natural way we build systems, while the standalone desktop application will become nearly extinct. Designing distributed software is remarkably hard, however. The fundamental characteristics of a networked environment (such as heterogeneity, partial failure, and latency) and the difficulty of "gluing together" multiple, independent processes into a robust, scalable application present the programmer with many challenges that don't arise when designing and building desktop applications. JavaSpaces(TM) technology is a simple, expressive, and powerful tool that eases the burden of creating distributed applications. Processes are loosely coupledcommunicating and synchronizing their activities using a persistent object store called a space, rather than through direct communication. This method of coordinating distributed processes leads to systems that are flexible, scalable, and reliable. While simple, the space-based model is powerful enough to implement advanced distributed applicationsfrom e-commerce systems to groupware to heavy-duty parallel computations. Space-based programming also leverages the Jini(TM) technology's leasing, distributed event, and transaction features, making it suitable for building robust, commercial-quality distributed systems. This book teaches you how touseJavaSpaces technology to design and build distributed applications. It is intended for computer professionals, students, and Java enthusiastsanyone who wants experience building networked applications. Through experimentation with the code examples, you'll develop a repertoire of useful techniques and patterns for creating space-based systems. We assume that you already have some programming experience and basic working knowledge of Java programming language fundamentals, but this book doesn't require any specific knowledge of network programming. JavaSpaces technology is new, and writing a book before the technology is in widespread use presents a unique challenge. We've approached the project from complementary perspectives. Two of the authors, Eric Freeman and Susanne Hupfer, spent much of the past decade designing and building space-based systems as part of the Linda research group at Yale University and used the JavaSpaces technology during the two years of its development. The third, Ken Arnold, was in charge of the JavaSpaces project at Sun Microsystems, working with a team of engineers to design and build the technology this book is all about. In this book, we present the foundations of programming with JavaSpaces technology, and a set of common patterns and frameworks for approaching space-based programs. As the technology becomes more widely used, the JavaSpace programming community will discover new ways of using it. We would like future editions of this book to incorporate these new patterns, and we invite you to send comments, suggestions, and ideas to javaspaces@awl.com and to make use of the book's web site at ... |
CITED BY 95
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Giancarlo Succi , Jason Yip , Witold Pedrycz, Holmes: an intelligent system to support software product line development, Proceedings of the 23rd International Conference on Software Engineering, p.829-830, May 12-19, 2001, Toronto, Ontario, Canada
|
|
|
|
|
|
|
|
|
|
|
|
Giancarlo Succi , Jason Yip , Eric Liu , Witold Pedrycz, Holmes: a system to support software product lines, Proceedings of the 22nd international conference on Software engineering, p.786, June 04-11, 2000, Limerick, Ireland
|
|
|
|
|
|
Y. Aridor , M. Factor , A. Teperman , T. Eilam , A. Schuster, A high performance cluster JVM presenting a pure single system image, Proceedings of the ACM 2000 conference on Java Grande, p.168-177, June 03-04, 2000, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
J. A. Mathew , H. A. James , K. A. Hawick, Development routes for message passing parallelism in Java, Proceedings of the ACM 2000 conference on Java Grande, p.54-61, June 03-04, 2000, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Manfred Glesner , Thomas Hollstein , Leandro Soares Indrusiak , Peter Zipf , Thilo Pionteck , Mihail Petrov , Heiko Zimmer , Tudor Murgan, Reconfigurable platforms for ubiquitous computing, Proceedings of the 1st conference on Computing frontiers, April 14-16, 2004, Ischia, Italy
|
|
|
Robert Grimm , Janet Davis , Eric Lemar , Adam Macbeth , Steven Swanson , Thomas Anderson , Brian Bershad , Gaetano Borriello , Steven Gribble , David Wetherall, System support for pervasive applications, ACM Transactions on Computer Systems (TOCS), v.22 n.4, p.421-486, November 2004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ron Coleman , Anil Bhardwaj , Albert Delucca , Gary Finke , Anthony Sofia , Michael Jutt , Sachin Batra, Microspaces: a compact javaspaces alternative for teaching net-centric computing in Java, Journal of Computing Sciences in Colleges, v.19 n.5, p.35-43, May 2004
|
|
|
|
|
|
|
|
|
|
|
|
Daniel Fiedler , Kristen Walcott , Thomas Richardson , Gregory M. Kapfhammer , Ahmed Amer , Panos K. Chrysanthis, Towards the measurement of tuple space performance, ACM SIGMETRICS Performance Evaluation Review, v.33 n.3, p.51-62, December 2005
|
|
|
|
|
|
Jing Wu , Michel Savoie , Scott Campbell , Hanxi Zhang , Gregor V. Bochmann , Bill St. Arnaud, Customer-managed end-to-end lightpath provisioning, International Journal of Network Management, v.15 n.5, p.349-362, September 2005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mohamed Galal , Hesham Eldeeb , Salwa Nassar, A new taxonomy for parallel Java models applied on cluster computing, Proceedings of the 4th WSEAS International Conference on Systems Theory and Scientific Computation, p.1-6, December 17-19, 2004, Tenerife, Canary Islands, Spain
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Nuno Correia , Luís Alves , Helder Correia , Luis Romero , Carmen Morgado , Luís Soares , José C. Cunha , Teresa Romão , A. Eduardo Dias , Joaquim A. Jorge, InStory: a system for mobile information access, storytelling and gaming activities in physical spaces, Proceedings of the 2005 ACM SIGCHI International Conference on Advances in computer entertainment technology, p.102-109, June 15-17, 2005, Valencia, Spain
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Andry Rakotonirainy , Jaga Indulska , Seng Wai Loke , Arkady B. Zaslavsky, Middleware for Reactive Components: An Integrated Use of Context, Roles, and Event Based Coordination, Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms Heidelberg, p.77-98, November 12-16, 2001
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reto Krummenacher , Elena Simperl , Dario Cerizza , Emanuele Della Valle , Lyndon J. B. Nixon , Doug Foxvog, Enabling the European Patient Summary through triplespaces, Computer Methods and Programs in Biomedicine, v.95 n.2, p.S33-S43, August, 2009
|
|
|
Fernando Rocha , Sérgio Soares , André Soares , Ricardo Lima, An adaptable framework for distributed and parallel applications, Proceedings of the 8th workshop on Parallel/High-Performance Object-Oriented Scientific Computing, p.1-7, July 07-07, 2009, Genova, Italy
|
|
|
|
|