EVENT-DRIVEN ARCHITECTURE IN GOLANG building complex systems with asynchronicity and eventual consistency /
Begin building event-driven microservices, including patterns to handle data consistency and resiliency Key Features Explore the benefits and tradeoffs of event-driven architectures with practical examples and use cases Understand synergy with event sourcing, CQRS, and domain-driven development in s...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
[S.l.] :
PACKT PUBLISHING LIMITED,
2022.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright and Credits
- Dedication
- Contributors
- Table of Contents
- Preface
- Part 1: Event-Driven Fundamentals
- Chapter 1: Introduction to Event-Driven Architectures
- Technical requirements
- An exchange of facts
- Event notifications
- Event-carried state transfer
- Event sourcing
- Core components
- Wrap-up
- The MallBots application
- The pitch
- Application services
- API gateway services
- Clients
- A quick note about hexagons
- Benefits of EDA
- Resiliency
- Agility
- User experience (UX)
- Analytics and auditing
- Challenges of EDA
- Eventual consistency
- Dual writes
- Distributed and asynchronous workflows
- Debuggability
- Getting it right
- Summary
- Chapter 2: Supporting Patterns in Brief
- Domain-driven design
- DDD misconceptions
- So, what is it all about then?
- How is it useful for EDA?
- Domain-centric architectures
- An evolving solution
- Hexagonal architecture applied
- Testing
- A rulebook, not a guidebook
- Should you use domain-centric architectures?
- How is it useful for EDA?
- Command and Query Responsibility Segregation
- The problem being solved
- Applying CQRS
- When to consider CQRS
- CQRS and event sourcing
- Task-based UI
- Application architectures
- Monolithic architecture
- Microservices
- Recommendation for green field projects
- Summary
- Further reading
- Chapter 3: Design and Planning
- Technical requirements
- What are we building?
- Finding answers with EventStorming
- What is EventStorming?
- Big Picture EventStorming
- Design-level EventStorming
- Understanding the business
- Recording architectural decisions
- Summary
- Further reading
- Part 2: Components of Event-Driven Architecture
- Chapter 4: Event Foundations
- Technical requirements
- A tour of MallBots
- The responsibilities of the monolith
- Module code organization
- User interface
- Running the monolith
- A focus on event-driven integration and communication patterns
- Taking a closer look at module integration
- Using external data
- Commanding external components
- Types of events
- Domain events
- Event sourcing events
- Integration events
- Refactoring side effects with domain events
- What about the modules not using DDD?
- Summary
- Chapter 5: Tracking Changes with Event Sourcing
- Technical requirements
- What is event sourcing?
- Understanding the difference between event streaming and event sourcing
- Adding event sourcing to the monolith
- Beyond basic events
- Adding the event sourcing package
- Using just enough CQRS
- A group of stores is called a mall
- A group of products is called a catalog
- Taking note of the little things
- Connecting the domain events with the read model
- Recapping the CQRS changes
- Aggregate event stream lifetimes
- Taking periodic snapshots of the event stream
- Using snapshots
- Summary
- Chapter 6: Asynchronous Connections