Please use this identifier to cite or link to this item:
http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/18406
Title: | Event-Driven Architectures using Apache Kafka |
Authors: | Λιαροκάπης, Αλέξανδρος Άρης Βεσκούκης Βασίλειος |
Keywords: | events event processing event sourcing event streaming microservices inter-service communication asynchronous communication asynchronous messaging message brokers message queues event driven architecture apache kafka distributed log topic partition replication leader election consumers producers consumer groups high resiliency high availability throughput latency |
Issue Date: | 8-Jul-2022 |
Abstract: | Event-Driven architectures are a very useful approach to decoupling inter-service communication while enabling unique communication patterns. The specific resiliency, availability, and performance requirements of such architectures, warrants the usage of specialized Message-Broker services. Moreover, new real-time requirements of many event processing tasks, such as metrics and analytics, requires a new approach compared to legacy batch processing. Apache Kafka is an open-source event streaming platform that can accommodate both use cases. This thesis performs a succinct presentation of Apache Kafka’s main architectural model, while focusing on its concrete resiliency and availability guarantees and providing guidelines for achieving desired operational characteristics. We also document and further enhance a mathematical model that permits the estimation and concrete sizing of cluster infrastructure, as well as express the link between topic sizing, maximum Event-Driven architectures are a very useful approach to decoupling inter-service communication while enabling unique communication patterns. The specific resiliency, availability, and performance requirements of such architectures, warrants the usage of specialized Message-Broker services. Moreover, new real-time requirements of many event processing tasks, such as metrics and analytics, requires a new approach compared to legacy batch processing. Apache Kafka is an open-source event streaming platform that can accommodate both use cases. This thesis performs a succinct presentation of Apache Kafka’s main architectural model, while focusing on its concrete resiliency and availability guarantees and providing guidelines for achieving desired operational characteristics. We also document and further enhance a mathematical model that permits the estimation and concrete sizing of cluster infrastructure, as well as express the link between topic sizing, maximum unavailability and end-to-end latency. |
URI: | http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/18406 |
Appears in Collections: | Διπλωματικές Εργασίες - Theses |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
thesis.pdf | 6.92 MB | Adobe PDF | View/Open |
Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.