While Event-driven architecture (EDA) has been around for over a decade, it is still reaching widespread adoption for building modern applications.
The keynote topic of Werner Vogels ' keynote address at the latest AWS re:Invent keynote highlights the benefits of building asynchronous, loosely coupled systems, and how event-driven architecture is the need of the hour to build globally scalable systems.
Solutions such as Kafka , NATS, Solace, AWS Eventbride, Google Cloud Eventarc, Azure Event Grid, AxonIQ, Lightbend Akka, among others have shared practical serverless services to facilitate the implementation of EDA applications.
Event-driven architectures are the ones that you should effective georgia mobile numbers list use to build applications that need to work at a global scale.
Dr. Werner Vogels (Amazon CTO)
Event-driven Architecture (EDA)
Event-driven architecture or EDA is an asynchronous and distributed architecture designed to create highly scalable applications.
This is a style of software creation that uses business events to trigger actions. Ideal for fast-growing companies that need to respond quickly to changes.
Event-driven architecture (EDA) describes a way to build your applications so that business events trigger actions within systems. For example, an event might be a change in a shipping address in one system which is then automatically transmitted to all interrelated services.
A major benefit of this architecture is that it is scalable and relatively easy to change. The inherently loosely coupled nature of EDA means that it is relatively easy to make changes to a particular part of your systems, without breaking anything else.
A well-designed EDA will be based on events that are meaningful to the business. Events can be triggered by user activity, external inputs such as sensor activity, or outputs from an analytics system. What's important is how you define those events so that you're capturing something important to your organization.
By basing your designs on these triggering events, you gain flexibility, being able to add new behaviors without having to redesign the entire system.
Conclusion