Navigating the Journey to Serverless Event Driven Architecture Api303

Title

AWS re:Invent 2023 - Navigating the journey to serverless event-driven architecture (API303)

Summary

  • Dave Boyne, a developer advocate at AWS, focuses on serverless and event-driven architectures.
  • Event-driven architecture (EDA) is growing due to increased accessibility.
  • Key topics include starting points for building event-driven solutions, integration patterns, and future-proofing implementations.
  • EDA allows for loosely coupled systems, agility, and extensibility.
  • EventBridge and other AWS services are highlighted for managing events and integration.
  • Event storming is recommended for understanding system behavior and identifying events and boundaries.
  • Different types of messages in event architectures include events, commands, and queries.
  • Common pitfalls in EDA include accidental coupling, sensitive data in events, and processing large messages.
  • Governance, standards, and discoverability are crucial for maintaining EDA.
  • EventBridge schema discovery, Async API, and Event Catalog are tools for event documentation and discoverability.
  • Communication and understanding domain language are important for reducing complexity in EDA.

Insights

  • EDA is not new but has gained traction due to modern tools making it more accessible.
  • Understanding the domain and behavior before implementation can prevent future complexities.
  • Event storming is a practical method to visualize and understand the system's behavior.
  • AWS services like EventBridge, SQS, and DynamoDB Streams provide infrastructure for managing events.
  • EventBridge Pipes is a service that can enrich and filter events, aiding in decoupling.
  • Event-driven architectures are a collection of patterns, and domain-driven design can complement EDA.
  • Governance, standards, and discoverability are essential for the long-term success of EDA.
  • Tools like EventBridge schema discovery, Async API, and Event Catalog can help with event documentation and discoverability.
  • Embracing ubiquitous language within domains can help maintain clarity and reduce complexity in EDA.
  • The talk emphasizes the importance of considering future maintenance and operational excellence when building EDA.