An algorithm for concurrency control and recovery in replicated distributed databases
ACM Transactions on Database Systems (TODS)
Designing a global name service
PODC '86 Proceedings of the fifth annual ACM symposium on Principles of distributed computing
Distrbution and Abstract Types in Emerald
IEEE Transactions on Software Engineering - Special issue on distributed systems
Object mobility in a distributed object-oriented system
Object mobility in a distributed object-oriented system
Lazy replication: exploiting the semantics of distributed services
PODC '90 Proceedings of the ninth annual ACM symposium on Principles of distributed computing
Lightweight causal and atomic group multicast
ACM Transactions on Computer Systems (TOCS)
Supporting distributed applications: experience with Eden
Proceedings of the tenth ACM symposium on Operating systems principles
A RISC approach to process groups
EW 5 Proceedings of the 5th workshop on ACM SIGOPS European workshop: Models and paradigms for distributed systems structuring
EW 5 Proceedings of the 5th workshop on ACM SIGOPS European workshop: Models and paradigms for distributed systems structuring
Implementing Location Independent Invocation
IEEE Transactions on Parallel and Distributed Systems
Reliable Multicast between Micro-Kernels
Proceedings of the Workshop on Micro-kernels and Other Kernel Architectures
Weighted voting for replicated data
SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
System support for object groups
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Concurrency and distribution in object-oriented programming
ACM Computing Surveys (CSUR)
Object-Oriented Programming: Regaining the Excitement
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
Abstracting Services in a Heterogeneous Environment
Middleware '01 Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms Heidelberg
Filtering Duplicated Invocations Using Symmetric Proxies
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
The development of the Emerald programming language
Proceedings of the third ACM SIGPLAN conference on History of programming languages
EventJava: An Extension of Java for Event Correlation
Genoa Proceedings of the 23rd European Conference on ECOOP 2009 --- Object-Oriented Programming
Group orchestration in a mobile environment
COORDINATION'12 Proceedings of the 14th international conference on Coordination Models and Languages
Hi-index | 0.00 |
This paper describes the Gaggle, a mechanism for grouping and naming objects in an object-oriented distributed system. Using Gaggles, client objects can access distributed replicated services without regard for the number of objects that provide the service. Gaggles are not themselves a replication mechanism; instead they enable programmers to construct their own replicated distributed services in whatever way is appropriate for the application at hand, and then to encapsulate the result.From the point of view of a client, a Gaggle can be named and invoked exactly like an object. However, Gaggles can be used to represent individual objects, several ordinary objects, or even several other Gaggles. In this way they encapsulate plurality. If a Gaggle is used as an invokee, one of the objects that it represents is chosen (non-deterministically) to receive the invocation.