XL peer-to-peer pub/sub systems

Increasingly, one of the most prominent ways to disseminate information on the Web is through “notifications” (also known as alerts), and as such they are at the core of many large-scale applications. For instance, users are notified of articles in which they are interested through RSS feeds, of pos...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM computing surveys 2013-11, Vol.46 (2), p.1-45
Hauptverfasser: Kermarrec, Anne-Marie, Triantafillou, Peter
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Increasingly, one of the most prominent ways to disseminate information on the Web is through “notifications” (also known as alerts), and as such they are at the core of many large-scale applications. For instance, users are notified of articles in which they are interested through RSS feeds, of posts from their friends through social networks, or of recommendation generated by various sites. Event notification usually relies on the so-called Publish-Subscribe (P ub /S ub ) communication paradigm. In P ub /S ub systems, subscribers sign up for events or classes of events in order to be asynchronously notified afterward by the system. The size of such systems (with respect to events and subscriptions) keeps growing, and providing scalable implementations of P ub /S ub systems is extremely challenging. Although there exist popular examples of centralized P ub /S ub systems that currently support a large number of subscribers, such as online social networks, they periodically face formidable challenges due to peak loads and do not always offer a support for fine-grain subscriptions. In fact, providing scalability along with expressiveness in the subscription patterns calls for distributed implementations of P ub /S ub systems. In parallel, peer-to-peer (P2P) overlay networks have emerged, providing a sound and highly scalable network foundation upon which to build distributed applications including P ub /S ub systems. In this article, we focus on fully decentralized (P2P), highly scalable, P ub /S ub systems. More specifically, we investigate how P ub /S ub and P2P research can be integrated. We define the design space and explore it in a systematic way. We expose an understanding of available design choices; provide a comprehensive classification and understanding of prominent P2P P ub /S ub systems, positioning them against the design dimensions; and highlight correlations between and implications, benefits, and shortcomings of design alternatives.
ISSN:0360-0300
1557-7341
DOI:10.1145/2543581.2543583