Development organizations sensing the shift from user-driven to machine-driven access patterns in APIs and services should consider event-driven architectures. These architectures enable the decoupling of rule-based services to microservices that consume and share data based on events. They are a capable approach to handling large volumes of real-time, complex transactions among IoT devices, data streams, workflow systems, and other services that sense and react to changing conditions.
You can better understand why event-driven architectures are more important today by looking back over the last two decades of internet-based architectures.
Most developers are familiar with two- and three-tiered web architectures designed to manage user experiences, process business logic, and interact with back-end APIs and data sources. There are mature patterns such as the model-view-controller (MVC) with implemented frameworks on many platforms to support these types of applications.
Developers learned quickly that separating business logic from presentation was important to scaling application development. Many organizations matured to engineering APIs as part of developing mobile applications, and some introduced service buses to help orchestrate multistep transactions and workflows across these APIs.
These are early steps to today’s architectural demands where users are no longer the primary customer of APIs. There are far more applications, data services, and sensors both internal and external to the organization that are the primary customers to API and services. These services are more capable and reusable to support new and changing business needs when they are engineered as microservices that can sense and react to events from an ecosystem of integrated services. This is why event-driven architectures are important today.