Skip to main content

Open-Source Publish-Subscribe Systems: A Comparative Study

Part of the Lecture Notes in Networks and Systems book series (LNNS,volume 449)

Abstract

Publish-Subscribe systems are designed to facilitate communication between services and applications. A typical system comprises the publisher, the subscriber, and the broker but, may also feature message queues, log files or databases for storing messages, clusters or federations of brokers and, apply message delivery policies, communication protocols, context manager for linked data, security services, and a streaming API. Not all these features are supported by all systems or, others may be optional. Therefore, there is no common ground for the comparison of Publish-Subscribe systems. The evaluation is about seven popular open-source and state-of-the-art systems namely, Apache Kafka, RabbitMQ, Orion-LD, Scorpio, Stellio, Pushpin, and Faye. All systems are evaluated and compared in terms of functionality and performance under real-case scenarios.

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-030-99584-3_10
  • Chapter length: 11 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   219.00
Price excludes VAT (USA)
  • ISBN: 978-3-030-99584-3
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   279.99
Price excludes VAT (USA)
Fig. 1.

Notes

  1. 1.

    http://openmessaging.cloud/docs/benchmarks/.

  2. 2.

    https://rocketmq.apache.org.

  3. 3.

    https://pulsar.incubator.apache.org.

  4. 4.

    https://redis.io.

  5. 5.

    https://pulsar.apache.org.

  6. 6.

    https://www.fiware.org.

  7. 7.

    https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/EU+Standards.

  8. 8.

    https://www.w3.org/standards/semanticweb/data.

  9. 9.

    https://httpd.apache.org/docs/2.4/programs/ab.html.

  10. 10.

    https://cloud.google.com/.

  11. 11.

    https://developer.ibm.com/articles/j-zerocopy/.

References

  1. Bees, D., Frost, L., Bauer, M., Fisher, M., Li, W.: NGSI-LD API: for Context Information Management (2019). https://www.etsi.org/images/files/ETSIWhitePapers/etsi_wp31_NGSI_API.pdf. (ETSI White Paper No. 31, 1st edition)

  2. Bellavista, P., Corradi, A., Reale, A.: Quality of service in wide scale publish-subscribe systems. IEEE Commun. Surv. Tutorials 16(3), 1591–1616 (2014). https://ieeexplore.ieee.org/document/6803100

  3. Chen, C., Vitenberg, R., Jacobsen, H.: OMen: overlay mending for topic-based publish/subscribe systems under churn. In: ACM International Conference on Distributed and Event-based Systems (DEBS 2016), pp. 105–116 (2016). https://doi.org/10.1145/2933267.2933305

  4. Coglan, J.: Faye: Simple Pub/Sub Messaging for the Web (2021). https://faye.jcoglan.com

  5. Corsaro, A., Querzoni, L., Scipioni, S., Tucci-Piergiovanni, S., Virgillito, A.: Quality of service in publish/subscribe middleware. In: Baldoni, R., Cortese, G. (eds.) Global Data Management, pp. 79–97. IOS Press (2006). https://ebooks.iospress.nl/volumearticle/22318

  6. EGM: FIWARE STELLIO Context Broker (2021). https://stellio.readthedocs.io/en/latest/index.html

  7. Esposito, C.: A tutorial on reliability in publish/subscribe services. In: ACM International Conference on Distributed Event-Based Systems (DEBS 2012), pp. 399–406 (2012). https://dl.acm.org/doi/10.1145/2335484.2335537

  8. Fanout: Pushpin: Add push to your API (2021). https://pushpin.org

  9. FIWARE: ORION-LD Linked Data Context Broker (2021). https://fiware-academy.readthedocs.io/en/latest/core/orion-ld/index.html

  10. Khoury, J., Lauer, G., Pal, P., Thapa, B., Loyall, J.: Efficient private publish-subscribe systems. In: IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing, pp. 64–71 (2014). https://ieeexplore.ieee.org/document/6899132

  11. Narkhede, N., Shapira, G., Palino, T.: Kafka The Definitive Guide, Real Time Data and Stream Processing at Scale. O’Reilly Media, Newton (2017). https://kafka.apache.org/

  12. NECTI: ScorpioBroker Documentation (2020). https://scorpio.readthedocs.io/_/downloads/en/latest/pdf/

  13. Nikhil, A., Chandar, V.: Benchmarking Apache Kafka, Apache Pulsar, and RabbitMQ: Which is the Fastest? (2020). https://www.confluent.io/blog/kafka-fastest-messaging-system/

  14. Oh, S., h. Kim, J., Fox, G.C.: Real-time performance analysis for publish/subscribe systems. Future Gener. Comput. Syst. (FGCS) 26(3), 318–323 (2010). https://dl.acm.org/doi/10.1016/j.future.2009.09.001

  15. Privat, G.: Guidelines for Modelling with NGSI-LD (2021). https://www.researchgate.net/publication/349928709_Guidelines_for_Modelling_with_NGSI-LD_ETSI_White_Paper. ETSI White Paper

  16. Sivaharan, T., Blair, G., Coulson, G.: Green: a configurable and re-configurable publish-subscribe middleware for pervasive computing. In: On the Move to Meaningful Internet Systems 2005: CoopIS, DOA, and ODBASE, pp. 732–749. Agia Napa, Cyprus (2005). https://link.springer.com/chapter/10.1007/11575771_46#citeas

  17. Sporny, M., Longley, D., Kellogg, G., Lanthaler, M., Champin, P., Lindström, N.: JSON-LD 1.1: A JSON-based Serialization for Linked Data (2021). https://w3c.github.io/json-ld-syntax/. W3C Editor’s Draft

  18. VMware: RabbitMQ: Messaging that Works (2021). https://www.rabbitmq.com

  19. Xiao, D., Zhang, Y., Chen, J.: A real-time and reliable forwarding scheme of publish/subscribe system. In: International Conference on Measuring Technology and Mechatronics Automation, pp. 51–54 (2014). https://ieeexplore.ieee.org/document/6802634

  20. Yigal, A.: Kafka vs. Redis: Log Aggregation Capabilities and Performance (2016). https://logz.io/blog/kafka-vs-redis/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Euripides G. M. Petrakis .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Verify currency and authenticity via CrossMark

Cite this paper

Lazidis, A., Petrakis, E.G.M., Chouliaras, S., Sotiriadis, S. (2022). Open-Source Publish-Subscribe Systems: A Comparative Study. In: Barolli, L., Hussain, F., Enokido, T. (eds) Advanced Information Networking and Applications. AINA 2022. Lecture Notes in Networks and Systems, vol 449. Springer, Cham. https://doi.org/10.1007/978-3-030-99584-3_10

Download citation