The Artima Developer Community
Sponsored Link

JavaSpaces: Data, Decoupling, and Iteration
A Conversation with Ken Arnold, Part V
by Bill Venners
October 7, 2002

<<  Page 3 of 5  >>


Trusting Actors with Your Data

Bill Venners: To me, JavaSpaces has always felt like shared memory between processes on different hosts.

Ken Arnold: Yes, it is often associated with shared memory.

Bill Venners: But JavaSpaces lets you share objects, not just data. So JavaSpaces has a weird dual personality. It is about sharing objects, but to a great extent, it is about sharing data too. And since data is shared, don't I have to trust that every actor is correct and well behaved? Is a JavaSpace, therefore, appropriate only in environments in which every actor trusts all the other actors?

Ken Arnold: You can view JavaSpaces as an alternative way to design distributed systems compared to RPC (remote procedure call) mechanisms. In either approach, you have to design a set of interactions. You must make tradeoffs about complexity and trust in those designs. You could set up systems that do or do not detect someone mucking with the system. Using a JavaSpace, at least one that other people can access, you probably cannot achieve certain kinds of security, like data security. Can someone read a particular entry in a space? If someone has access to the space, depending on the space's security model, he could probably read the entry. But everything has its ups and downs, and its tradeoffs. You can certainly design algorithms that are robust in the face of others behaving incorrectly. It had better be possible, because the difference between a bug and security hole is intention. At this point, most uses of JavaSpaces live behind the firewall. Just as a form of entertainment, I am currently writing a poker game that uses a JavaSpace to communicate between the participants and the decision maker. One question is: What happens if somebody comes in and screws around with your data? There are ways you can deal with that.

<<  Page 3 of 5  >>

Sponsored Links

Copyright © 1996-2018 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use