Skip to main content

Distributed Asynchronous Collections: Abstractions for Publish/Subscribe Interaction

  • Conference paper
  • First Online:
ECOOP 2000 — Object-Oriented Programming (ECOOP 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1850))

Included in the following conference series:

Abstract

Publish/subscribe is considered one of the most important interaction styles for the explosive market of enterprise application integration. Producers publish information on a software bus and consumers subscribe to the information they want to receive from that bus. The decoupling nature of the interaction between the publishers and the subscribers is not only important for enterprise computing products but also for many emerging e-commerce and telecommunication applications. It is often claimed that object-orientation is inherently incompatible with the publish/subscribe interaction style. This flawed argument is due to the persistent confusion between object-orientation as a modeling discipline and the specific request/reply mechanism promoted by CORBA-like middleware systems. This paper describes object-oriented abstractions for publish/subscribe interaction in the form of Distributed Asynchronous Collections (DACs). DACs are general enough to capture the commonalities of various publish/subscribe interaction styles, and flexible enough to allow the exploitation of the differences between these flavors.

This work is partially supported by Agilent Laboratories and Lombard Odier & Co.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Altherr and M. Erzberger and S. Maffeis. iBus-A Software Bus Middleware for the Java Platform. In International Workshop on Reliable Middleware Systems, pages 43–53, October 1999.

    Google Scholar 

  2. K. Arnold and B. O’Sullivan and R.W. Scheifler and J. Waldo and J. Wollrath. The Jini Specification. Addison Wesley, 1999.

    Google Scholar 

  3. K.P. Birman. The Process Group Approach to Reliable Distributed Computing. In Communications of the ACM, 36:12, pages 36–53, December 1993.

    Google Scholar 

  4. J.-P. Briot and R. Guerraoui and K.-P. Löhr. Concurrency and Distribution in Object-Oriented Programming. In ACM Computing Surveys, September 1998.

    Google Scholar 

  5. D. Caromel. Towards a Method of Object-Oriented Concurrent Programming. In Communications of the ACM, vol. 36, pages 90–102, September 1993.

    Google Scholar 

  6. M. Colan. InfoBus 1.2 Specificationa. Sun Microsystems Inc., February 1999.

    Google Scholar 

  7. Talarian Corporation. Everything You need to know about Middleware: Mission-Critical Interprocess Communication (White Paper). http://www.talarian.com/, 1999.

  8. E. Freeman and S. Hupfer and K. Arnold. JavaSpaces Principles, Patterns, and Practice. Addison Wesley, 1999.

    Google Scholar 

  9. E. Gamma and R. Helm and R. Johnson and J. Vlissides. Design Patterns, Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.

    Google Scholar 

  10. D. Gelernter. Generative Communication in Linda. In ACM Transactions on Programming Languages and Systems, 7:1, pages 80–112, Januaray 1985.

    Google Scholar 

  11. R. Guerraoui. What object-oriented distributed programming does not have to be, and what it may be. In Informatik, 2, April 1999.

    Google Scholar 

  12. M. Happner and R. Burridge and R. Sharma. Java Message Service. Sun Microsystems Inc., October 1998.

    Google Scholar 

  13. M. Hauswirth and M. Jazayeri. A Component and Communication Model for Push Systems. In ESEC/FSE 99-Joint 7th European Software Engineering Conference (ESEC) and 7th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE-7), September 1999.

    Google Scholar 

  14. IBM. Smalltalk Tutorial. http://www.smalltalksystems.com/references.htm/, 1995.

  15. Sun Microsystems Inc. The Java Platform 1.2 API Specification. http://java.sun.com/products/jdk/1.2/, 1999.

  16. Sun Microsystems Inc. The Java Collections Framework. http://java.sun.com/products/jdk/1.2/, 1999.

  17. E. Jul and H. Levy and N. Hutchinson and A. Black. Fine-grained mobility in the Emerald System. In ACM Transactions on Computer Systems, 6:1, pages 109–133, February 1988.

    Google Scholar 

  18. P. Koenig,. Messages vs. Objects for Application Integration. In Distributed Computing, 2:3, pages 44–45, April 1999, BCI.

    Google Scholar 

  19. D. Lea Design for open systems in Java. In Second International Conference on Coordination Models and Languages, 1997. http://gee.cs.oswego.edu/dl/coord/.

  20. D. Lea. Overview of package util.concurrent Release 1.2.5. http://gee.cs.oswego.edu/dl/classes/, October 1999.

  21. ObjectSpace. JGL-Generic Collection Library. http://www.objectspace.com/products/jgl/, 1999.

  22. B. Oki and M. Pfluegl and A. Siegel and D. Skeen. The Information Bus-An Architecture for Extensible Distributed Systems. In Fourteenth ACM Symposium on Operating System Principles, pages 58–68, December 1993.

    Google Scholar 

  23. OMG. The Common Object Request Broker: Architecture and Specification. February 1998.

    Google Scholar 

  24. OMG. CORBAservices: Common Object Services Specification. December 1998.

    Google Scholar 

  25. Microsoft Co. DCOM Technical Overview (White Paper), 1999.

    Google Scholar 

  26. D. Powell. Group Communications. In Communications of the ACM, 39:4, pages 50–97, April 1996.

    Google Scholar 

  27. D. Rosenblum and A. Wolf. A Design Framework for Internet-Scale Event Observation and Notification. In Sixth European Software Engineering Conference/ACM SIGSOFT Fifth Symposium on the Foundations of Software Engineering, September 1997.

    Google Scholar 

  28. D. Schmidt and S. Vinoski. Overcoming Drawbacks in the OMG Event Service. In SIGS C++ Report magazine, 10, June 1997.

    Google Scholar 

  29. D. Skeen. Vitria’s Publish-Subscribe Architecture: Publish-Subscribe Overview. http://www.vitria.com, 1998.

  30. A. Stepanov and M. Lee. The Standard Template Library. Silicon Graphics Inc., October 1995.

    Google Scholar 

  31. Sun Microsystems Inc. Java Remote Method Invocation-Distributed Computing for Java (White Paper). http://java.sun.com/marketing/collateral/javarmi.html/, 1999.

  32. TIBCO Inc. TIB/Rendezvous White Paper. http://www.rv.tibco.com/whitepaper.html, 1999.

  33. J. Waldo and G. Wyant and Wollrath and S. Kendall. A Note on Distributed Computing. Sun Microsystems Inc., November 1994.

    Google Scholar 

  34. J. Waldo and G. Wyant and A Wollrath and S. Kendall. Events in an RPC Based Distributed System. Sun Microsystems Laboratories Inc., November 1995.

    Google Scholar 

  35. A. Yonezawa and E. Shibayama and T. Takada and Y. Honda. Object-Oriented Concurrent Programming. In Modeling and Programming in an Object-Oriented Concurrent Language ABCL/1, pages 55–89, MIT Press, 1987.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Eugster, P.T., Guerraoui, R., Sventek, J. (2000). Distributed Asynchronous Collections: Abstractions for Publish/Subscribe Interaction. In: Bertino, E. (eds) ECOOP 2000 — Object-Oriented Programming. ECOOP 2000. Lecture Notes in Computer Science, vol 1850. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45102-1_13

Download citation

  • DOI: https://doi.org/10.1007/3-540-45102-1_13

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67660-7

  • Online ISBN: 978-3-540-45102-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics