Definition
Publish/Subscribe is an interaction pattern that characterizes the exchange of messages between publishing and subscribing clients. Subscribers express interest in receiving messages and publishers simply publish messages without specifying the recipients for a message. The publish/subscribe message exchange is decoupled and anonymous. That is, publishers neither know subscribers’ identities nor whether any subscribers with matching interests exist at all. This supports a many-to-many style of communication, where data sources publish and data sinks subscribe. Different classes of publish/subscribe approaches have crystallized. Their main differences lie in the way subscribers express interest in messages, in the structure and format of messages, in the architecture of the system, and in the degrees of decoupling supported. Publish/Subscribe is widely used as middleware abstraction, applied to enterprise application integration, system and network monitoring, and selective...
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Recommended Reading
AMQP Consortium. Advanced Message Queuing Protocol Specification, version 0–10 edition, 2008.
Chakravarthy S. and Mishra D. Snoop: an expressive event specification language for active databases. Data Knowl. Eng., 14(1):1–26, 1994.
Chang J.M. and Maxemchuk N.F. Reliable broadcast protocols. ACM Trans. Comput. Syst., 2(3):251–273, 1984.
Cheriton D.R. and Zwaenepoel W. Distributed process groups in the v kernel. ACM Trans. Comput. Syst., 3(2):77–107, 1985.
Chockler G.V., Keidar I., and Vitenberg R. Group communication specifications: a comprehensive study. ACM Comput. Surv., 33(4):427–469, 2001.
Cohen D. Compiling complex database transition triggers. ACM SIGMOD Rec., 18(2):225–234, 1989.
Forgy C.L. Rete: A fast algorithm for the many pattern/many object pattern match problem. Artifi. Intell., 19(1):17–37, 1982.
Gamma E., Helm R., Johnson R., and Vlissides J. Design Patterns: Elements of Reusable Object-oriented Software. Addison-Wesley Longman Publishing Co., Inc., 1995.
Hapner M., Burridge R., and Sharma R. Java Message Service. Sun Microsystems, version 1.0.2 edition, November 9th 1999.
Ka Yau Leung H. Subject space: a state-persistent model for publish/subscribe systems. In Proc. Conf. of the Centre for Advanced Studies on Collaborative Research, 2002, p. 7.
Ka Yau Leung H. and Jacobsen H.A. Efficient matching for state-persistent publish/subscribe systems. In Proc. Conf. of the Centre for Advanced Studies on Collaborative Research, 2003, pp. 182–196.
Krishnamurthy B. and Rosenblum D.S. Yeast: A general purpose event-action system. IEEE Trans. Softw. Eng., 21(10):845–857, 1995.
Liu H. and Jacobsen H.A. Modeling uncertainties in publish/subscribe system. In Proc. 20th Int. Conf. on Data Engineering, 2004.
Mansouri-samani M. and Sloman M. Gem: A generalized event monitoring language for distributed systems. Distrib. Syst. Eng. J., 4:96–108,1997.
OGF. Information Dissemination in the Grid Environment Base Specifications, 2007.
Oki B., Pfluegl M., Siegel A., and Skeen D. The information bus: an architecture for extensible distributed systems. In Proc. 14th ACM Symp. on Operating System Principles, 1993, pp. 58–68.
OMG. Data Distribution Service for Real-time Systems, version 1.2, formal/07-01-01 edition, January 2007.
OMG. Event Service Specification, version 1.2, formal/04-10-02 edition, October 2004.
OMG. Notification Service Specification, version 1.1, formal/04-10-11 edition, October 2004.
The PADRES Team. Publish/subscribe data sets. http://research.msrg.utoronto.ca/Padres/DataSets, 2008.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer Science+Business Media, LLC
About this entry
Cite this entry
Jacobsen, HA. (2009). Publish/Subscribe. In: LIU, L., ÖZSU, M.T. (eds) Encyclopedia of Database Systems. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-39940-9_1181
Download citation
DOI: https://doi.org/10.1007/978-0-387-39940-9_1181
Publisher Name: Springer, Boston, MA
Print ISBN: 978-0-387-35544-3
Online ISBN: 978-0-387-39940-9
eBook Packages: Computer ScienceReference Module Computer Science and Engineering