Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/286936.286961acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article
Free access

System support for object groups

Published: 01 October 1998 Publication History

Abstract

This paper draws several observations from our experiences in building support for object groups. These observations actually go beyond our experiences and may apply to many other developments of object based distributed systems.Our first experience aimed at building support for Smalltalk object replication using the Isis process group toolkit. It was quite easy to achieve group transparency but we were confronted with a strong mismatch between the rigidity of the process group model and the flexible nature of object interactions. Consequently, we decided to build our own object oriented protocol framework, specifically dedicated to support object groups (instead of using a process group toolkit). We built our framework in such a way that basic distributed protocols, such as failure detection and multicasts, are considered as first class entities, directly accessible to the programmers. To achieve flexible and dynamic protocol composition, we had to go beyond inheritance and objectify distributed algorithms.Our second experience consisted in building a CORBA service aimed at managing group of objects written on different languages and running on different platforms. This experience revealed a mismatch between the asynchrony of group protocols and the synchrony of standard CORBA interaction mechanisms, which limited the portability of our CORBA object group service. We restricted the impact of this mismatch by encapsulating asynchrony issues inside a specific messaging sub-service.We dissect the cost of object group transparency in our various implementations, and we point out the recurrent sources of overheads, namely message indirection, marshaling/unmarshaling and strong consistency.

References

[1]
G. Agha and R. Guerraoui (guest editors). Theory and Practice of Object Systems, John Wiley and Sons, Inc. Special issue on High Availability in CORBA, 1998, 4 (2),
[2]
P. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency Control and Recovery in Database Systems. Addison Wesley, 1987.
[3]
A. Birell and B. Nelson. Implementing Remote Procedure Calls. ACM Transactions on Computer Systems, 2 (1), 1984, 39-59.
[4]
J.P. Briot, R. Guerraoui and K.P Lohr. Concurrency and Distribution in Object-Oriented Programming. ACM Computing Surveys, September 1998.
[5]
K. Birman and R. van Renesse. Reliable Distributed Computing with the Isis Toolkit. IEEE Computer Society Press, 1993.
[6]
A. Black, and M. Immell. Encapsulating Plurality. European Conference on Object-Oriented Programming, Springer Verlag (LNCS 707), 1993, 57-79.
[7]
N. Brown and C. Kindel. Distributed Component Object Model Protocol. DCOM, http://www.microsoft.com/oledev/olecom.
[8]
T. Chandra and S. Toueg. Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43 (2), 1996, 225-267.
[9]
D. Cheriton and D. Skeen, Understanding the Limitations of Causally and Totally Ordered Communication. ACM Symposium on Operating Systems Principles, 1993.
[10]
E. Elnozahy, V. Ratan, and M. Segal. Experiences Using DCE and CORBA to Build Tools .for Creating Highly-Available Distributed Systems. IEEE Symposium on Fault-Tolerant Computing Systems, 1996.
[11]
P. Felber, B. Gaxbinato, and R. Guerraoui. The Design of a CORBA Group Communication Service. IEEE Symposium on Reliable Distributed Systems, 1996, 150-159.
[12]
P. Felber, R. Guerraoui, and A. Schiper. Replicating Objects with CORBA Event Channels. IEEE Workshop on Future Trends of Distributed Computing Systems, 1997, 14-21.
[13]
P. Felber, R. Guerraoui, and A. Schiper. The Implementation of a CORBA Object Group Service. Theory and Practice of Object Systems, John Wiley and Sons, Inc. Special issue on High Availability in CORBA, 1998, 4 (2), 93-i0~.
[14]
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns, Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
[15]
B. Garbinato, 1~. Guerraoui, and K. Mazouni. Distributed Programming in GARF. in Object-Based Distributed Programming, Springer Verlag (LNCS 791), 1993, 225-240.
[16]
B. Gaxbinato, R. Guerraoui, and K. Mazouni. Implementation of the GARF Replicated Objects Plateform. Distributed Systems Engineering Journal, 1 (2), 1995, 14-27.
[17]
B. Garbinato, P. Felber, and R. Guerraoui. Protocol Glasses for Designing Reliable Distributed Environments. European Conference on Object-Oriented Programming, Springer Verlag (LNCS 1098), 1996, 316-343.
[18]
B. Garbinato and R. Guerraoui. Using the strategy design pattern to compose reliable distributed protocols. Usenix Conference on Object-Oriented Technologies and Systems, 1997, 221-232.
[19]
B. Gaxbinato and R. Guerraoui. Flexible Protocol Composition in BAST. IEEE International Conference on Distributed Computing Systems, 1998, 22-27.
[20]
A.J Goldberg and A.D Robson. SMALLTALK-80: The Language and its Implementation. Addison Wesley, 1983.
[21]
R. Guerraoui and A. Schiper. Transactional model vs Virtual Synchrony model: bridging the gap. In Theory and Practice in Distributed Systems, Springer Verlag (LNCS 938), 1995, 121-132.
[22]
R. Guerraoui, R. Oliveira, and A. Schiper. Atomic updates of replicated data. European Dependable Computing Conference, Springer Verlag (LNCS 1150), 1996, 365- 382.
[23]
R. Guerraoui and A. Schiper. Software-Based Replication for Fault-Tolerance. IEEE Computer, 30 (4), 1997, 68-74.
[24]
R. Guerraoui, B. Garbinato and K. Mazouni. GARF: A Tool for Programming Reliable Distributed Applications. IEEE Concurrency, 5 (4), 1997, 32-39.
[25]
E. Harold. Java Network Programming. O'Reilly, 1997.
[26]
H. Huni, R. Johnson, and R. Engel. A Framework for network protocol software. ACM Conference on Object- Oriented Programming Systems, Languages and Applications, 1995.
[27]
IONA. OrbixTalk Programming Guide. IONA Technologies Ltd, 1996.
[28]
IONA. Orbix 2.2 Programming Guide. IONA Technologies Ltd, 1997.
[29]
IONA and Isis. An Introduction to Orbix+Isis. IONA Technologies Ltd. and Isis Distributed Systems, inc, 1994.
[30]
Isis. Object Groups: A response to the ORB 2.0 RFI. Isis Distributed Systems, Inc, 1993.
[31]
G. Kiczales, J. des Rivi~res, and D. Bobrow. The Art of the Metaobject protocol. The MIT Press, 1991.
[32]
M. Little and S. Shrivastava. Object Replication in Arjuna. Broadcast Project deliverable report, Vol. 2, 1994 (available from Dept of Computing Science, University of Newcastle upon Tyne, UK).
[33]
S. Maffeis. Run-Time Support for Object-Oriented Distributed Programming. PhD thesis, University of Zurich, 1995.
[34]
K. Mazouni, B. Garbinato, and R. Guerraoui. Filtering Duplicated Invocations Using Symmetric Prozies. IEEE International Workshop on Object Orientation in Operating Systems, 1995, 118-126.
[35]
S. Mishra, L. Peterson, and R. Schlichting. Implementing Fault-Tolerant Replicated Objects Using Psync. IEEE Symposium on Reliable Distributed Systems, 1989.
[36]
P. Narasimhan, L. Moser, and M. Melliar-Smith. Exploiting the internet inter-ORB protocol to provide CORBA with fault-tolerance. Usenix Conference on Object-Oriented Technologies and Systems, 1997, 81-90.
[37]
OMG. The Common Object Request Broker Architec. ture: Architecture and Specification. OMG.
[38]
OMG. CORBAservices: Common Object Services Specifications. OMG.
[39]
L. Peterson, N. Hutchinson, S. O'Malley, and M. Abott. Rpc in the x-Kernel: evaluating new design techniques. ACM Symposium on Operating Systems Principles, 1989, 91-101.
[40]
D.PoweU (guest editor). Communications of the ACM, 39(4), Special issue on Group Communication, April 1996.
[41]
L. Rodrigues, K. Guo, A. Sargento, R. van Renesse, B. Glade, P. Verissimo, and K. Birman. A Transparent Light-Weight Group Service. IEEE Symposium on Reliable Distributed Systems, 1996, 130-139.
[42]
S. Shrivastava, G. Dixon and G. Parrington. An Overview of Arjuna: A Programming System for Reli. able Distributed Computing. IEEE Software, 8 (1), 1991, 63-73.
[43]
Visigenic. Visibroker C+4- 3. 0 Programmer's Guide. Visigenic Software, Inc., 1997.
[44]
M. Wood. Replicated RPC Using Amoeba Closed Group Communication. IEEE International Conference on Distributed Computing Systems, 1993.

Cited By

View all
  • (2017)CRESON: Callable and Replicated Shared Objects over NoSQL2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS.2017.239(115-128)Online publication date: Jun-2017
  • (2009)Highly available fault tolerant distributed computing using reflection and replicationProceedings of the International Conference on Advances in Computing, Communication and Control10.1145/1523103.1523156(251-256)Online publication date: 23-Jan-2009
  • (2009)Transactional memory in a dynamic languageComputer Languages, Systems and Structures10.1016/j.cl.2008.06.00135:1(21-30)Online publication date: 1-Apr-2009
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
OOPSLA '98: Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
October 1998
428 pages
ISBN:1581130058
DOI:10.1145/286936
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1998

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

OOPSLA98
Sponsor:

Acceptance Rates

Overall Acceptance Rate 268 of 1,244 submissions, 22%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)71
  • Downloads (Last 6 weeks)6
Reflects downloads up to 29 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2017)CRESON: Callable and Replicated Shared Objects over NoSQL2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS.2017.239(115-128)Online publication date: Jun-2017
  • (2009)Highly available fault tolerant distributed computing using reflection and replicationProceedings of the International Conference on Advances in Computing, Communication and Control10.1145/1523103.1523156(251-256)Online publication date: 23-Jan-2009
  • (2009)Transactional memory in a dynamic languageComputer Languages, Systems and Structures10.1016/j.cl.2008.06.00135:1(21-30)Online publication date: 1-Apr-2009
  • (2007)Transactional memory for smalltalkProceedings of the 2007 international conference on Dynamic languages: in conjunction with the 15th International Smalltalk Joint Conference 200710.1145/1352678.1352692(207-221)Online publication date: 25-Aug-2007
  • (2007)Availability/Consistency Balancing Replication Model2007 IEEE International Parallel and Distributed Processing Symposium10.1109/IPDPS.2007.370610(1-8)Online publication date: Mar-2007
  • (2007)Service Communities: A Structuring Mechanism for Service-Oriented Business Ecosystems2007 Inaugural IEEE-IES Digital EcoSystems and Technologies Conference10.1109/DEST.2007.371957(122-127)Online publication date: Feb-2007
  • (2006)Service communitiesProceedings of the 6th international workshop on Software engineering and middleware10.1145/1210525.1210531(17-22)Online publication date: 10-Nov-2006
  • (2006)Active Replication of Multithreaded ApplicationsIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2006.5617:5(448-465)Online publication date: 1-May-2006
  • (2006)A System Architecture for Enhanced Availability of Tightly Coupled Distributed SystemsProceedings of the First International Conference on Availability, Reliability and Security10.1109/ARES.2006.19(400-407)Online publication date: 20-Apr-2006
  • (2004)Experiences, Strategies, and Challenges in Building Fault-Tolerant CORBA SystemsIEEE Transactions on Computers10.1109/TC.2004.127529353:5(497-511)Online publication date: 1-May-2004
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media