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...
Gespeichert in:
Veröffentlicht in: | ACM computing surveys 2013-11, Vol.46 (2), p.1-45 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
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 |