Changes for page Create Synchronous Messaging
Last modified by Danniar Firdausy on 2023/08/11 11:14
From version 1.2
edited by eMagiz
on 2022/06/08 12:38
on 2022/06/08 12:38
Change comment:
Update document after refactoring.
To version 12.1
edited by Danniar Firdausy
on 2023/08/09 15:42
on 2023/08/09 15:42
Change comment:
There is no comment for this version
Summary
-
Page properties (5 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - intermediate-key-concepts-emagiz-messaging-entry-not-a-queue1 +Create Synchronous Messaging - Parent
-
... ... @@ -1,1 +1,1 @@ 1 -WebHome 1 +Main.eMagiz Academy.Microlearnings.Intermediate Level.Key concepts eMagiz Messaging.WebHome - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. marijn1 +XWiki.dfirdausy - Default language
-
... ... @@ -1,0 +1,1 @@ 1 +en - Content
-
... ... @@ -1,93 +1,27 @@ 1 -{{ html wiki="true"}}2 - <divclass="ez-academy">3 - <divclass="ez-academy_body">1 +{{container}} 2 +{{container layoutStyle="columns"}}((( 3 +In this exercise, we will guide create a simple synchronous messaging pattern based on the previous microlearnings. 4 4 5 - <divclass="doc">5 +Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 6 6 7 - 8 - 9 -= Entry, not a queue = 10 - 11 -In this microlearning, we will explore what the function of the entry is within the message engine. Furthermore, we will explain why there is no entry queue. 12 - 13 -Should you have any questions, please get in touch with academy@emagiz.com. 14 - 15 -* Last update: August 5th, 2021 16 -* Required reading time: 5 minutes 17 - 18 18 == 1. Prerequisites == 19 19 20 -* Intermediateknowledgeof theeMagiz platform9 +* Completed the previous microlearnings of this intermediate course. 21 21 22 -== 2. Keyconcepts ==11 +== 2. Exercise == 23 23 24 -This microlearning centers on the concept of entry, not a queue. 13 +Below, the exercise for this part of the intermediate course, which centers around the synchronous messaging pattern in eMagiz, is given. 14 +By synchronous, we mean The process that processes data and subsequently informs the caller what the status is. 25 25 26 -* The key aspects are: 27 - * Entry is the starting point of the integration process in messaging 28 - * Queues are an internal resource of eMagiz 29 - * Outside parties are not allowed to write on eMagiz queues directly 30 - * eMagiz facilitates various connectivity methods (i.e., REST, SOAP, Database, File) 16 +=== 2.1. Creating Synchronous Messaging === 17 + 18 +== 3. Solution == 31 31 20 +... 32 32 22 +{{video attachment="Exercises - Intermediate - Key Concepts eMagiz Messaging [Create].mp4" reference="Main.Videos.Microlearning.WebHome"/}} 33 33 34 - == 3. Entry, not a queue ==24 +))) 35 35 36 -In this microlearning, we will explore what the function of the entry is within the message engine. Furthermore, we will explain why there is no entry queue. 37 - 38 -* The key aspects are: 39 - * Entry is the starting point of the integration process in messaging 40 - * Queues are an internal resource of eMagiz 41 - * Outside parties are not allowed to write on eMagiz queues directly 42 - * eMagiz facilitates various connectivity methods (i.e., REST, SOAP, Database, File) 43 - 44 -As you learned from the introductory course on messaging, we use a five-layer approach to handle data within the messaging engine. The first layer the data encounters is the entry. The goal of the entry is twofold. One is to establish a connection with an external system. The other is to place data on a queue. There are two ways to establish connectivity. The first method is via a pull mechanism. This pull mechanism means that eMagiz will initiate the communication to retrieve data. The second method is a push mechanism. This push mechanism means that eMagiz will patiently wait till the external system offers data to eMagiz. The push mechanism will typically be realized with the help of a hosted web service (REST or SOAP) within your eMagiz solution. 45 - 46 -Since the goal of the entry is connectivity between the external system and eMagiz, you could argue that it would be easy to let them place the data on the queue. However, things are not that easy. There are several reasons why this is not a best practice: 47 - 48 -* This would mean that the external system directly needs to connect to the infra layer (the JMS) and will have the option to read and write on other queues as well 49 -* This would mean that the external system can only push data to eMagiz (so no polling of data) 50 -* This would mean that the external system can directly place data on a queue 51 -* This would create a tightly coupled dependency between the external system and eMagiz 52 - 53 -The above arguments concluded that the connectivity between eMagiz and the external system and the internal queue mechanism of eMagiz should be considered two separate things. This conclusion did raise a question on how eMagiz can guarantee message delivery. The messaging engine uses queues to ensure message delivery. But what if the first queue (the onramp queue) cannot be reached? What happens then. 54 - 55 -The H2 database is introduced to safeguard against any problems within the entry. This component is generated in every entry in eMagiz. This H2 database will temporarily store data and act as a bridge between the entry and the onramp queue. This way, eMagiz can guarantee message delivery. If you want to learn more about the function of the H2 database, please check out this [microlearning](intermediate-solution-architecture-function-of-h2-database.md). 56 - 57 -To summarize: 58 - 59 -* Entry is the starting point of the integration process in messaging 60 -* Queues are an internal resource of eMagiz 61 -* Outside parties are not allowed to write on eMagiz queues directly 62 -* eMagiz facilitates various connectivity methods (i.e., REST, SOAP, Database, File) 63 - 64 -===== Practice ===== 65 - 66 -== 4. Assignment == 67 - 68 -No assignment accompanies this microlearning. 69 - 70 -== 5. Key takeaways == 71 - 72 -* The key aspects are: 73 - * Entry is the starting point of the integration process in messaging 74 - * Queues are an internal resource of eMagiz 75 - * Outside parties are not allowed to write on eMagiz queues directly 76 - * eMagiz facilitates various connectivity methods (i.e., REST, SOAP, Database, File) 77 - 78 - 79 - 80 -== 6. Suggested Additional Readings == 81 - 82 -If you are interested in this topic, please boost your knowledge with the help of the internet. 83 - 84 -== 7. Silent demonstration video == 85 - 86 -As this is a more theoretical microlearning, we have no video for this. 87 - 88 -</div> 89 - 90 -</div> 91 -</div> 92 - 93 -{{/html}} 26 +((({{toc/}}))){{/container}} 27 +{{/container}}