Events
An event-driven architecture is a software design pattern where microservices respond to state changes, known as events. Events can carry state information (such as item price or delivery address) or act as identifiers (like a notification for order received or shipped). These events trigger microservices collaborating towards a common goal without needing to know about each other, except for the event format. Despite operating together, each microservice can apply different business logic and emit its own output events.
Key characteristics of an event:
Key characteristics of an event:
- It records something that has occurred.
- It captures an immutable fact that cannot be changed or deleted.
- It happens whether or not a service applies any logic upon consumption.
- It can be persisted indefinitely, at scale, and consumed multiple times.
In an event-driven system, events are generated by event producers, routed and filtered by an event router or broker, and then distributed to the relevant event consumers or sinks. The events are sent to subscribers defined by matching triggers. These three components—event producers, event router, event consumers—are decoupled and can be independently deployed, updated, and scaled.
Webhooks
A webhook in web development is a method of augmenting or altering the behavior of a web page or web application with custom callbacks. These callbacks may be maintained, modified, and managed by third-party users and developers who may not necessarily be affiliated with the originating website or application.
The Mavryx platform allows two methods of configuring webhooks: one through the administrative panel, and the other via the API.