JavaSpaces

JavaSpaces

JavaSpaces ist eine Spezifikation des Konzepts Object Spaces in der Programmiersprache Java. Ein Object Space ist hierbei ein assoziativer Speicher von verteilten, über das Netz erreichbaren Objekten. Kommunikationspartner (peers) kommunizieren ausschließlich indirekt über diese Objekte (stateful communication and coordination). Dadurch etabliert der JavaSpace einen aktiven, verteilten Datenraum wie er in keiner anderen Technologie geschaffen wird (traditionelles grid-computing). Einige Ansätze der Jini-Technologie kommen hierbei zur Anwendung. Bei der Idee, die sich hinter den JavaSpaces verbirgt, handelt es sich nicht um eine revolutionäre Neuerung, sondern sie basiert im Wesentlichen auf den Linda TupelSpaces.

Die Gründe, warum JavaSpaces eingesetzt werden, sind vielfältig. Meist wird Skalierbarkeit und Verfügbarkeit bei gleichzeitiger Reduzierung der Gesamtkomplexität angestrebt.

Die Ankündigung von Jini/Javaspaces erzeugte einen Medien-Hype, obgleich Sun-Mitbegründer und Chef-Jini-Architekt Bill Joy klarstellte, dass diese Art der verteilten Systemarchitektur einen "Quantensprung im Denken" erfordert [1].

Inhaltsverzeichnis

Ähnliche Konzepte

  • Redis
  • Lime: Linda in a Mobile Environment
  • Limone
  • IBM's TSpaces
  • SQLSpaces
  • PyLinda
  • openMosix Cluster for Linux

Literatur

  • Eric Freeman, Susanne Hupfer, Ken Arnold: JavaSpaces Principles, Patterns, and Practice. Addison-Wesley Professional, 1. Juni 1999, ISBN 0201309556
  • Phil Bishop, Nigel Warren: JavaSpaces in Practice. Addison Wesley, 2002, ISBN 0321112318

Artikel

Referenzen

  1. Rob Guth: More than just another pretty name: Sun's Jini opens up a new world of distributed computer systems. SunWorld, August 1998 [15. Januar 2006]

Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Tuple space — A tuple space is an implementation of the associative memory paradigm for parallel/distributed computing. It provides a repository of tuples that can be accessed concurrently. As an illustrative example, consider that there are a group of… …   Wikipedia

  • Пространство кортежей — (tuple space) реализация парадигмы ассоциативной памяти для параллельных/распределённых вычислений. Она предоставляет репозиторий кортежей с параллельным доступом. Например, можно представить группу процессоров, которые вычисляют данные и… …   Википедия

  • Ken Arnold — Kenneth Cutts Richard Cabot Arnold is a computer programmer well known as one of the developers of the 1980s dungeon crawling computer game Rogue [ [http://www.wichman.org/roguehistory.html A Brief History of Rogue ] ] , for his contributions to… …   Wikipedia

  • JINI — ist ein Framework zum Programmieren von verteilten Anwendungen, welche besondere Anforderungen an die Skalierbarkeit und die Komplexität der Zusammenarbeit zwischen den verschiedenen Komponenten stellen und nicht durch existierende Techniken… …   Deutsch Wikipedia

  • Bill Joy — William Nelson Joy (born Nov 8, 1954), commonly known as Bill Joy, is an American computer scientist. Joy co founded Sun Microsystems in 1982 along with Vinod Khosla, Scott McNealy, Andy Bechtolsheim and Vaughan Pratt, and served as chief… …   Wikipedia

  • Jini — (pronounced like genie and 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, responsibility for Jini is being transferred to… …   Wikipedia

  • David Gelernter — David Hillel Gelernter (born 1955) is a professor of computer science at Yale University. In the 1980s, he made seminal contributions to the field of parallel computation, specifically the tuple space coordination model, as embodied by the Linda… …   Wikipedia

  • Linda (coordination language) — In computer science, Linda is a model of coordination and communication among several parallel processes operating upon objects stored in and retrieved from shared, virtual, associative memory.This model is implemented as a coordination language… …   Wikipedia

  • Distributed object — Image describes communication between distributed objects residing in different machines. The term distributed objects usually refers to software modules that are designed to work together, but reside either in multiple computers connected via a… …   Wikipedia

  • Explicit parallelism — In computer programming, explicit parallelism is the representationof concurrent computations by means of primitivesin the form of special purpose directives or function calls. Most parallel primitives are related to process synchronization,… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”