3factor app - Reliable Eventing

Topics covered
Popular Clips
Episode Highlights
Granularity
Determining the appropriate granularity of events is crucial in domain-driven design. Alan Underwood explains that the right granularity aligns with business needs, using examples like adding or removing items from an order. Joe Zack emphasizes that high-velocity, scalable applications, such as Uber or Google Docs, benefit from well-defined event granularity 1.
  Â
Challenges
Granularity in eventing systems presents several challenges, particularly with schema evolution. Alan Underwood discusses the overhead of updating schemas, which can be time-consuming and complex. Joe Zack adds that schema changes require applications to understand and adapt to new data formats, complicating maintenance 2 3.
  Â
Consistency
Eventual consistency is a key consideration in event-driven systems. Joe Zack notes that tools and documentation have matured, making it easier to implement. Alan Underwood highlights that event sourcing can introduce unnecessary complexity if applied universally, suggesting it should be used selectively 4 5.
Related Episodes


3factor app - Realtime GraphQL
Answers 383 questions

3factor app - Async Serverless
Answers 383 questionsThe Twelve-Factor App: Codebase, Dependencies, and Config
Answers 383 questionsThe Twelve-Factor App: Dev/Prod Parity, Logs, and Admin Processes
Answers 383 questionsThe DevOps Handbook – Enable Daily Learning
Answers 383 questionsCaching in the Application Framework
Answers 383 questionsThe Twelve-Factor App: Backing Services, Building and Releasing, Stateless Processes
Answers 383 questions

Designing Data-Intensive Applications - Reliability
Answers 383 questions

Designing Data-Intensive Applications - Data Models: Relational vs Document
Answers 383 questionsDesigning Data-Intensive Applications – Scalability
Answers 383 questions

Nuts and Bolts of Apache Kafka
Answers 383 questions
Tackling Tough Developer Questions
Answers 383 questionsDesign Patterns Part 3
Answers 383 questions

Designing Data-Intensive Applications – Multi-Leader Replication
Answers 383 questionsDesigning Data-Intensive Applications – Data Models: Query Languages
Answers 383 questions
