Advanced Search
CS Search Google Search
Subscribers, please login

Published Articles >> Table of Contents >> Abstract

Publication Home Page
March/April 2004 (Vol. 21, No. 2)   pp. 56-64
Distributed Programming with Typed Events

Full Article Text: View linked HTML of full textDownload PDF of full textBuy this articleGet full text from IEEE Xplore

DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2004.1270763
Send link to a friend

Abstract

Whereas the remote-procedure-call (RPC) abstraction, including its derivates such as remote method invocation, has proven to be an adequate programming paradigm for client-server applications over LANs, type-based publish-subscribe (TPS) is an appealing candidate programming abstraction for decoupled and completely decentralized applications that run over large-scale and mobile networks. TPS enforces type safety and encapsulation (just like RPC) while providing decoupling and scalability properties (unlike RPC).

Two TPS implementations in Java demonstrate this approach’s potential. The first is a seminal approach relying on specific primitives added to the Java language. The second is a library implementation based on more general recent Java mechanisms, avoiding any specific compilation.

References
[1] A.D. Birrell and B.J. Nelson, "Implementing Remote Procedure Calls," ACM Trans. Computer Systems, vol. 2, no. 1, Feb. 1984, pp. 39-59.
[2] D. Gelernter, "Generative Communication in Linda," ACM Trans. Programming Languages and Systems (TOPLAS), vol. 7, no. 1, Jan. 1985, pp. 80-112.
[3] B. Oki et al., "The Information Bus—An Architecture for Extensible Distributed Systems," Proc. 14th ACM Symp. Operating System Principles (SOSP 93), ACM Press, 1993, pp. 58-68.
[4] D. Powell, "Group Communications," Comm. ACM, vol. 39, no. 4, Apr. 1996, pp. 50-97.
[5] S. Baehni et al., "Pragmatic Type Interoperability," Proc. 23rd IEEE Int'l Conf. Distributed Computing Systems (ICDCS 03), IEEE CS Press, 2003, pp. 404-411.
[6] A. Carzaniga, D.S. Rosenblum, and A.L. Wolf, "Achieving Scalability and Expressiveness in an Internet-Scale Event Notification Service," Proc. 19th ACM Symp. Principles of Distributed Computing (PODC 2000), ACM Press, 2000, pp. 219-227.
[7] P.T. Eugster and R. Guerraoui, "Probabilistic Multicast," Proc. 2002 IEEE Int'l Conf. Dependable Systems and Networks (DSN 2002), IEEE CS Press, 2002, pp. 313-322.
[8] M.K. Aguilera et al., "Matching Events in a Content-Based Subscription System," Proc. 18th ACM Symp. Principles of Distributed Computing (PODC 1999), ACM Press, 1999, pp. 53-62.
[9] P.T. Eugster, R. Guerraoui, and C. Heide Damm, "On Objects and Events," Proc. 16th ACM Conf. Object-Oriented Systems, Languages, and Applications (OOPSLA 2001), ACM Press, 2001, pp. 254-269.
[10] P.T. Eugster, R. Guerraoui, and J. Sventek, "Distributed Asynchronous Collections: Abstractions for Publish and Subscribe Interaction," Proc. 14th European Conf. Object-Oriented Programming (ECOOP 2000), LNCS 1850, Springer-Verlag, 2000, pp. 252-276.
[11] R. Milner, "A Theory of Type Polymorphism in Programming," J. Computing Systems Sciences, vol. 17, no. 3, Dec. 1978, pp. 348-375.
[12] G. Bracha et al., "Making the Future Safe for the Past: Adding Genericity to the Java Programming Language," Proc. 13th ACM Conf. Object-Oriented Programming Systems, Languages and Applications (OOPSLA 98), ACM Press, 1998, pp. 183-200.
Additional References
[1] R.J. Oberg, Understanding&Programming COM+, Prentice Hall, 2000.
[2] "Event Service Specification," CORBAservices: Common Object Services Specification, Object Management Group, 2001, Chapter 4.
[3] T. Harrison, D. Levine, and D.C. Schmidt, "The Design and Performance of a Real-Time CORBA Event Service," Proc. 12th ACM Conf. Object-Oriented Programming Systems, Languages and Applications (OOPSLA 97), ACM Press, 1997, pp. 184-200.
[4] Notification Service Standalone Document, Object Management Group, 2000.
[5] Java Message Service Specification, Sun Microsystems, 2002; http://java.sun.com/products/jmsdocs.html .
[6] E. Freeman, S. Hupfer, and K. Arnold, JavaSpaces Principles, Patterns, and Practice, Addison-Wesley, 1999.
[7] M. Haahr et al., "Filtering and Scalability in the ECO Distributed Event Model," Proc. 5th Int'l Symp. Software Eng. for Parallel and Distributed Systems (PDSE 2000), IEEE CS Press, 2000, pp. 83-92.
[8] J. Bacon et al., "Generic Support for Distributed Applications," Computer, vol. 33, no. 3, Mar. 2000, pp. 68-76.
Additional References
[1] G. Kiczales, J. des Rivières, and D.G. Bobrow, The Art of the Metaobject Protocol, MIT Press, 1991.
Additional Information
Index Terms- Distributed programming, publish-subscribe, events, type safety, Java

Citation:  Patrick T. Eugster, Rachid Guerraoui, "Distributed Programming with Typed Events," IEEE Software, vol. 21,  no. 2,  pp. 56-64,  Mar/Apr,  2004

RSS Feed

Similar Articles

Abstract Contents
Abstract
References
Index Terms
Citation




Free access to

  • Abstracts
  • Selected PDFs

Electronic subscribers login to:

  • Access HTML/PDFs of full text articles

Subscription information

Get a Web account

PDFs require Adobe Acrobat Reader.

Peer Review Notice

Give us Feedback