Messaging - Introduction
Welcome to this microlearning module, where we will explore the fundamental concepts behind Messaging and how eMagiz enables this functionality to seamlessly integrate various applications. By the end of this module, you'll have a solid understanding of how messaging works within the eMagiz platform.
If you have any questions along the way, feel free to reach out to us at academy@emagiz.com.
1. Prerequisites
- Basic knowledge of the eMagiz platform
- Completed the Crash course Platform
2. Key concepts
Organizations use many applications to support their business processes, and in a regular landscape, all of these applications are required to exchange data with each other to fulfill business processes. Some of the required data might be outside the organization. The messaging integration pattern allows processing messages that contain data in a secure, reliable manner. Whether that is processed synchronously or asynchronously – both are handled in the Messaging in eMagiz. Nearly all message formats and exchange protocols are supported. This last is one of the core advantages to overcome format and protocol limitations of to be connected systems.
3. Key elements of Messaging
3.1 Five layers to rule them all
eMagiz has implemented a 5 layered model based on the integration architectural pattern VETRO which stands for Validate, Enrich, Transform, Route, and Operate. Each of these layers plays a role in the pattern. Below an explanation of these 5 layers. Each of these layers will result in integration components referred to as flows in eMagiz, and each of these flows will run in a specific runtime position strategically across the integration landscape (see also section Cloud in this document).
- Entry
- In the entry flow you can configure the connectivity with the system that will send a message to eMagiz. It can be a push from the external system or a pull from eMagiz to the external system. Once the message is received, the message will be queued directly to the next step in the model
- Onramp
- In this part, the message will be transformed and validated so it is prepared for the next steps where that message will be sent to the external system. Specific elements exist here to also enrich the message where needed with additional attributes
- Routing
- Using specific header information, the message can be routed to one of more offramps for further processing
- Offramp
- In this process the message that was passed on from the routing can be first validated if it meets the expected structure, and then transformed to the target system. Once processed, the message is put in the exit queue.
- Exit
- The exit will read the message from the queue and then connect to the target system
Below a picture of the above layers including the formats of the intermediate transformations. Please see the CDM microlearnings for more information.
3.2 Support formats and protocols
The Messaging pattern of eMagiz can handle the most common formats and protocols. The most typical ones that are used are SOAP/XML, File-based connectivity, and REST/JSON. However, formats such as EDI are also handled by eMagiz. Special connectivity exists with Mendix applications where a specific connector is provided to ease the interaction at runtime as well as design time.
3.3 Cloud design pattern
eMagiz provides a specific runtime in which the different flow components of the 5 layered model can be deployed in. These runtimes as standardized across, but can run anywhere in the integration architecture. As a typical scenario, messages might be sent to the client infrastructure from outside the organization (suppliers, customers, etc) and send to an internal system that runs inside the client infrastructure. In this case, the entry flow would be deployed in a runtime somewhere in the eMagiz Cloud, and the exit would be deployed in a runtime that runs on a server inside the client infrastructure (close to the target system). the onramps, offramps, and routing flows would run inside the eMagiz Cloud container. All these flows would then communicate via queues to transfer messages across. In this way, the VETRO patterns are also used in the Cloud architecture of eMagiz.
4. Key takeaways
- eMagiz provides robust Messaging integration patterns designed to tackle complex integration challenges, accommodating diverse formats and protocols.
- The platform’s messaging architecture, built on the VETRO model (Validate, Enrich, Transform, Route, Operate), ensures secure and reliable data exchange between connected systems, whether within or outside your organization.
- With its flexible cloud-based design, eMagiz can efficiently meet all integration requirements, making it an essential tool for implementing comprehensive business solutions.
5. Suggested Additional Readings
This video provides an introduction to the Messaging concept
If you are interested in this topic and want more information on it please see the following links: