filmov
tv
Eberhard Wolff about Kafka Patterns and Anti-Patterns
Показать описание
Kafka has become one of the main drivers for event-oriented APIs and systems and ecosystems using that style. Kafka is a reliable and highly scalable tool that as an additional feature has the ability to store all messages indefinitely. This allows certain patterns such as event sourcing to be based on Kafka relatively easily.
Eberhard Wolff explains why this ability of Kafka (or similar message-oriented systems) may lead to unfortunate design decisions. It may cause the messaging system to become the new centralized database, where all events are centrally stored and managed. This means that implementations using it that way violate encapsulation constraints which say that components should not expose (parts of) their implementation to the outside.
Instead, a better model of using messaging systems like Kafka is to not treat them as part of the implementation of components, but instead to treat them strictly as communications infrastructure. At the very least, even when they are used as part of component implementations, then the models that these components do store should be treated as private data instead of exposing those implementation details.
Eberhard Wolff explains why this ability of Kafka (or similar message-oriented systems) may lead to unfortunate design decisions. It may cause the messaging system to become the new centralized database, where all events are centrally stored and managed. This means that implementations using it that way violate encapsulation constraints which say that components should not expose (parts of) their implementation to the outside.
Instead, a better model of using messaging systems like Kafka is to not treat them as part of the implementation of components, but instead to treat them strictly as communications infrastructure. At the very least, even when they are used as part of component implementations, then the models that these components do store should be treated as private data instead of exposing those implementation details.
Eberhard Wolff about Kafka Patterns and Anti-Patterns
Event-based Architecture & Implementations with Kafka & Atom • Eberhard Wolff • GOTO 2018...
Kafka - The New Database Monolith
Eberhard Wolff - Do We Worship Complexity?
Eberhard Wolff on Microservices
Eberhard Wolff — Software Architecture for Humans!
Everything you Wanted to Know about Apache Kafka but You Were too Afraid to Ask!
Embrace the Anarchy : Apache Kafka’s Role in Modern Data Architectures by Robin Moffatt
Getting started with Service Mesh • Hanna Prinz & Eberhard Wolff • GOTO 2020
Organization: A Tool for Software Architects • Eberhard Wolff • GOTO 2021
Entwicklertag 2016: Microservices: Redundanz = Wartbarkeit! - Eberhard Wolff
Integration
Microservices - Wo sind meine Transaktionen und meine Konsistenz hin???? – INNOQ Technology Lunch
Best Practices: Keine gute Idee
Self-Contained Systems with Eberhard Wolff
E-POST Eberhard Wolff: Spring Boot
Kafka, DevOps...And Resilience for All • James Bowkett • GOTO 2021
Domain Prototyping: Iterative Entwicklung mit Domain-driven Design & User Experience Tobias Goes...
Why You Might Fail With Domain-driven Design (Wordwide Software Architecture Summit 23)
Vaughn Vernon about Ports and Adapters and DDD
Cloud-Native and Scalable Kafka Architecture
Common Apache Kafka Mistakes to Avoid
Beten wir Komplexität an?
Reacting to the future of application architecture
Комментарии