Business events can be used by applications as a signal to inform other applications that something interesting has occurred. For example, if a customer places an order in a web shop, the web shop can signal this with a business event called New Order Placed. Any application can indicate that it wants to receive this event to handle follow–up actions in real time (for example, to send an invoice or handle packaging and logistics).
Events are delivered and distributed by the Data Hub Broker. Apps publishing events do not need to know who needs to receive events, and apps receiving events do not have to call the publishing app. The benefit of this is that events can be received and handled in real time, without the source application having to call all the individual interested parties.
Events published by applications are also automatically registered in the Data Hub Catalog, which means that any low–code developer can easily find relevant business events in a centralized catalog. They can then simply drag and drop these events into their Mendix apps and connect them to microflows or workflows to specify what needs to happen when the business events are triggered.
The Mendix Data Hub Broker is built on top of Kafka, which is a highly scalable and reliable component for delivering and processing event messages. Mendix ensures any low-code developer can benefit from this component by handling all the complexities in the platform. Developers can simply define a business event in their app’s domain model and then publish it in a microflow, and the platform will handle the communication logic. Alternatively, consuming app developers can simply subscribe microflows to business events from the Data Hub Catalog, and the Mendix Platform will ensure these microflows are executed when the event gets published.
Business events are completely integrated into Mendix low-code development. The attributes of a business event are defined in the domain model, and the business event can be published using a microflow event. Business events are treated like data, which means you can retrieve published and received events like other entities. More importantly, publishing business events respects the error–handling facilities offered by Mendix. Events are only delivered to other applications if your microflow succeeds. If your microflow fails and your entity changes are rolled back, your published business events will also be rolled back and will not be delivered to the subscribed applications.
Business events are based on open standards that are integrated into the Mendix low-code platform. Open standards ensure that the Mendix Data Hub Broker and Business Events will integrate well with non-Mendix components in your application landscape.
We are using the following standards:
- is an open standard (backed by CNCF) which defines what messages technically look like when exchanged between applications.
- is used to describe the business event services. AsyncAPI is an open standard for contracts describing message based services.
- Apache Kafka is the messaging infrastructure used within Mendix Data Hub Broker. Kafka is a proven and scalable event streaming platform.