Event mesh definition:
An event mesh is a network of interconnected event brokers that enables the distribution of events information among applications, cloud services, and devices within an enterprise.
An event mesh can route information from one application to any other applications no matter where they are deployed (in a datacenter, in a private or public cloud, at the edge, etc.
In systems built according to the principles of event-driven architecture, events are used as the primary means of communication between different components, rather than traditional request/reply-interactions. An event mesh facilitates the exchange of information between microservices and applications in an event-driven manner.
The Core Capabilities of an Event Mesh
There are several core capabilities that an event mesh should provide:
- Scalability: An event mesh should be able to handle large event volumes and “bursty” traffic without performance issues.
- Resiliency: An event mesh should be able to recover from failures and maintain event delivery even in the face of outages.
- Asynchronous Communications: An event mesh should support asynchronous communications so systems can send and receive information without having to wait for a response.
- Flexibility: An event mesh should support a wide range of event types and formats, easy integration with different systems and technologies, and hybrid cloud deployment that spans cloud and on-premises systems.
- Visibility: An event mesh should let administrators track and monitor events as they move through the mesh.
- Security: An event mesh should protect against unauthorized access and tampering.
Why Do Enterprises Need an Event Mesh?
Modern enterprises need an event mesh to build more flexible and responsive systems that can easily adapt to changing demands. The ability to connect legacy systems, cloud services, and IoT devices lets enterprises fully take advantage of the capabilities of each system, while also allowing them to operate more efficiently and effectively.
One of the main challenges that enterprises face when trying to integrate systems is that they use different technologies, protocols, and data formats. An event mesh can overcome these challenges by supporting a wide range of APIs, protocols and formats so each system can send and receive information in their preferred way.
In addition, an event mesh makes it easier for enterprises to incorporate new technologies into their systems.
The Business Value of an Event Mesh
In terms of business value, implementing an event mesh allows an enterprise to:
- Enhance decision making capabilities: All data that touches the event mesh is available on demand in a secure, reliable manner. This rich, real-time data source can be used to inform important business decisions surrounding operations, supply chain, finance, marketing, etc.
- Bring IT and OT data together: IT systems typically support business processes and operations while OT systems typically support physical processes and operations. By enabling communication and integration between IT and OT systems, an event mesh can help to improve the efficiency and effectiveness of an enterprise.
- Capitalize on a superior customer experience: Applications, people, and systems having access to real-time data means businesses have the ability to create personalized experiences for customers and respond to requests in real-time.
Event Mesh vs. Service Mesh: What’s the Difference?
Service mesh supports RESTful and synchronous request-reply interactions, while event mesh supports asynchronous, event-based interactions. Event mesh actually complements service mesh because it is a parallel layer that completes the application architecture by providing the full set of inter-application communication patterns.
Event mesh and service mesh are similar in that they both enable better communication between applications by putting certain functions into a layer between the network and the application.
There are a few important distinctions between event mesh and service mesh:
- Service mesh connects microservices in cloud environments – Kubernetes – with the promise of enabling this communication between different Kubernetes clusters and perhaps other clouds in the future.
- Event mesh connects not only microservices but also legacy applications, cloud-native services, devices, and data sources/sinks. These can operate both in cloud and non-cloud environments.
For more on this topic, check out the free white paper Comparing and Contrasting Service Mesh and Event Mesh