Evolving Your Containerized REST Based Microservices to Adapt to EDA • Dhiraj Mahapatro • GOTO 2023

Learn how to evolve your containerized REST-based microservices to adopt event-driven architecture, reducing temporal coupling, improving scalability and fault tolerance, and enabling asynchronous processing.

Key takeaways
  • Event-driven architecture (EDA) enables decoupling of producers and consumers, reducing temporal coupling and improving scalability.
  • EDA uses events to communicate between services, allowing for asynchronous processing and improved fault tolerance.
  • Using event brokers, such as Amazon EventBridge, can help manage events and route them to the correct consumers.
  • Event-driven design can be applied to existing systems, such as containerized microservices, to improve scalability and fault tolerance.
  • KEDA (Kubernetes-based Event Driven Autoscaling) can be used to scale containerized applications based on event-based metrics.
  • SQS (Simple Queue Service) can be used as a mechanism for handling events and scaling applications.
  • Event-driven architecture can be used to integrate with third-party services and APIs.
  • Using polyglot implementation, different teams can work on different services using different languages, such as Java,.NET, and TypeScript.
  • Event-driven architecture can be used to reduce the area of impact in case of failures, improving overall system resilience.
  • Using event-driven architecture, services can be scaled independently, improving overall system performance.
  • Event-driven architecture can be used to reduce tight coupling between producers and consumers, improving overall system scalability.
  • Using event brokers, such as Amazon EventBridge, can help manage events and route them to the correct consumers.
  • Event-driven architecture can be used to improve fault tolerance and reduce the impact of failures.
  • Using event-driven architecture, services can be scaled independently, improving overall system performance.
  • Event-driven architecture can be used to reduce the area of impact in case of failures, improving overall system resilience.
  • Using KEDA, containerized applications can be scaled based on event-based metrics.
  • SQS can be used as a mechanism for handling events and scaling applications.
  • Event-driven architecture can be used to integrate with third-party services and APIs.