On Delivery Guarantees in Distributed Content-Based Publish/Subscribe Systems

Distributed overlay-based publish/subscribe systems provide a selective and scalable communication paradigm for connecting components of a distributed application. Existing overlay-based systems only guarantee delivery of notifications to clients that are already known by all brokers in the overlay. Nonetheless, due to the propagation delay, it takes time for a client's interests to be received by all brokers comprising the overlay. The message propagation delay and unclear delivery guarantees during this time increase the complexity of developing distributed applications based on the pub/sub paradigm. In this paper, we propose a collection of message processing and delivery guarantees that allows clients to clearly define the set of publications they receive. Based on our evaluation, these delivery guarantees can reduce buffering requirements on clients by up to 10 times, prevent missing notifications due to the propagation delay, and provide clients with primitive building blocks that simplify application development. We evaluate our proposed routing algorithms and show that a pub/sub system can provide the proposed delivery guarantees without increasing its resource requirements or hindering its throughput.

[1]  I. Keidar,et al.  Group Communication Speci cations: A Comprehensive Study , 1999 .

[2]  Brett D. Fleisch,et al.  The Chubby lock service for loosely-coupled distributed systems , 2006, OSDI '06.

[3]  Idit Keidar,et al.  Modular Composition of Coordination Services , 2016, USENIX Annual Technical Conference.

[4]  Ehud Gudes,et al.  Transactions in Content-Based Publish/Subscribe Middleware , 2007, 27th International Conference on Distributed Computing Systems Workshops (ICDCSW'07).

[5]  Kaiwen Zhang,et al.  Multi-Client Transactions in Distributed Publish/Subscribe Systems , 2018, 2018 IEEE 38th International Conference on Distributed Computing Systems (ICDCS).

[6]  Ming Li,et al.  A Scalable and Elastic Publish/Subscribe Service , 2011, 2011 IEEE International Parallel & Distributed Processing Symposium.

[7]  Hans-Arno Jacobsen,et al.  The PADRES Distributed Publish/Subscribe System , 2005, FIW.

[8]  Reza Sherafat Kazemzadeh Overlay Neighborhoods for Distributed Publish/Subscribe Systems , 2013 .

[9]  Reza Sherafat Kazemzadeh,et al.  The PADRES Publish/Subscribe System , 2010, Principles and Applications of Distributed Event-Based Systems.

[10]  Roberto Baldoni,et al.  Modeling publish/subscribe communication systems: towards a formal approach , 2003, Proceedings of the Eighth International Workshop on Object-Oriented Real-Time Dependable Systems, 2003. (WORDS 2003)..

[11]  Gerardo Pardo-Castellote,et al.  OMG Data-Distribution Service: architectural overview , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[12]  Hans-Arno Jacobsen,et al.  Highly-available content-based publish/subscribe via gossiping , 2016, DEBS.

[13]  Reza Sherafat Kazemzadeh,et al.  Reliable and Highly Available Distributed Publish/Subscribe Service , 2009, 2009 28th IEEE International Symposium on Reliable Distributed Systems.

[14]  Jun Li,et al.  Wormhole: Reliable Pub-Sub to Support Geo-replicated Internet Services , 2015, NSDI.

[15]  John C. Knight,et al.  Publish and Subscribe with Reply , 2002 .

[16]  Matteo Migliavacca,et al.  On adding replies to publish-subscribe , 2007, DEBS '07.

[17]  Jay Kreps,et al.  Kafka : a Distributed Messaging System for Log Processing , 2011 .

[18]  Mahadev Konar,et al.  ZooKeeper: Wait-free Coordination for Internet-scale Systems , 2010, USENIX ATC.

[19]  Hans-Arno Jacobsen,et al.  Adaptive Content-Based Routing in General Overlay Topologies , 2008, Middleware.

[20]  Kaiwen Zhang,et al.  Minimizing the Communication Cost of Aggregation in Publish/Subscribe Systems , 2015, 2015 IEEE 35th International Conference on Distributed Computing Systems.

[21]  Ajay Mohindra,et al.  Building scalable, secure, multi-tenant cloud services on IBM Bluemix , 2016, IBM J. Res. Dev..

[22]  Patrick Th. Eugster,et al.  Aggregation for implicit invocations , 2013, AOSD.

[23]  Hans-Arno Jacobsen,et al.  Transactional Mobility in Distributed Content-Based Publish/Subscribe Systems , 2009, 2009 29th IEEE International Conference on Distributed Computing Systems.

[24]  David S. Rosenblum,et al.  Design and evaluation of a wide-area event notification service , 2001, TOCS.