Changes for page Messaging Synchronous
Last modified by Danniar Firdausy on 2024/09/16 13:37
From version 13.7
edited by Danniar Firdausy
on 2024/09/16 13:29
on 2024/09/16 13:29
Change comment:
There is no comment for this version
To version 4.1
edited by Erik Bakker
on 2022/08/23 10:02
on 2022/08/23 10:02
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. dfirdausy1 +XWiki.ebakker - Default language
-
... ... @@ -1,1 +1,0 @@ 1 -en - Content
-
... ... @@ -5,6 +5,9 @@ 5 5 6 6 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 7 7 8 +* Last update: August 5th, 2021 9 +* Required reading time: 5 minutes 10 + 8 8 == 1. Prerequisites == 9 9 10 10 * Intermediate knowledge of the eMagiz platform ... ... @@ -23,16 +23,16 @@ 23 23 24 24 == 3. Messaging Synchronous == 25 25 26 -Synchronous messaging is the less used, the less advised option when implementing a messaging integration via eMagiz. In case you want to learn more about asynchronous messaging, please check out this [ [microlearning>>doc:Main.eMagiz Academy.Microlearnings.CrashCourse.Crash Course Messaging.crashcourse-messaging-messaging-asynchronous||target="blank"]].29 +Synchronous messaging is the less used, the less advised option when implementing a messaging integration via eMagiz. In case you want to learn more about asynchronous messaging, please check out this [microlearning](crashcourse-messaging-messaging-asynchronous.md) 27 27 28 28 Key characteristics of synchronous messaging are: 29 29 30 - *Blocking. The sender initiates the process and waits for a response before continuing with the following message31 - *Systems depend on the responses of other systems for their function32 - *Messages have a time limit. The response needs to be back within 25 seconds (eMagiz default)33 - *Uses a request-response structure that talks to one system at a time33 +- Blocking. The sender initiates the process and waits for a response before continuing with the following message 34 +- Systems depend on the responses of other systems for their function 35 +- Messages have a time limit. The response needs to be back within 25 seconds (eMagiz default) 36 +- Uses a request-response structure that talks to one system at a time 34 34 35 -With this method, the sending party supplies the data to eMagiz via a push mechanism. eMagiz, in turn, places the data on a queue (in most cases an onramp queue). The subsequent process (the onramp) will process the message and will put the message on the next queue (the synchronous routing). That process will route each message to the correct offramp. This process continues until the message eMagiz delivers to the external system. At that point, eMagiz will wait for a response. If that response is received, the message will travel back to the starting point to deliver the reaction to the caller. If something goes wrong, for example, a timeout, the error message is also given back to the caller, and eMagiz will log the exception. If you want to learn more on that, please check out this [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Understanding Error Handling.intermediate-understanding-error-handling-in-emagiz-messaging-synchronous||target="blank"]] .38 +With this method, the sending party supplies the data to eMagiz via a push mechanism. eMagiz, in turn, places the data on a queue (in most cases an onramp queue). The subsequent process (the onramp) will process the message and will put the message on the next queue (the synchronous routing). That process will route each message to the correct offramp. This process continues until the message eMagiz delivers to the external system. At that point, eMagiz will wait for a response. If that response is received, the message will travel back to the starting point to deliver the reaction to the caller. If something goes wrong, for example, a timeout, the error message is also given back to the caller, and eMagiz will log the exception. If you want to learn more on that, please check out this [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Understanding Error Handling.intermediate-understanding-error-handling-in-emagiz-messaging-synchronous.WebHome||target="blank"]] 36 36 37 37 [[image:Main.Images.Microlearning.WebHome@intermediate-key-concepts-emagiz-messaging-messaging-synchronous--concept.png]] 38 38 ... ... @@ -42,53 +42,28 @@ 42 42 43 43 A third aspect to consider is whether you can set a generic point of entry through which all clients can communicate via eMagiz to many other systems. In those cases, you could look at the API Gateway solution as an alternative to synchronous messaging, as it comes with several benefits. More on the basics of the API Gateway can be found in this [[crashcourse>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course API Gateway.WebHome||target="blank"]]. 44 44 45 -== =3.1Practical use case ===48 +== 4. Assignment == 46 46 47 - Apractical use caseinwhich you wouldmost likely wanttohandleyour integrationsynchronously is thefollowinguse case:50 +No assignment accompanies this microlearning. 48 48 49 - Imagineyou want to order something at a webshop.Afteryouhave selected the product(s), you want to open the payment process to pay. Upon payment, you also need to supply the relevant address information, so the webshopknows where to deliver the product. In doing so, you often see thatwhen you provide your postal code (and house number), the systemwill automatically fill in the remainder of your address information. This functionality is there for two reasons. Your convenience and because the webshop needs this information to deliver the product you paid for correctly. If the webshop does not know where to deliver the product, the webshop cannot complete the order process. As a result, the webshop needs to send out a request that will promptly be followed by a response (a synchronous call).52 +== 5. Key takeaways == 50 50 51 -Even in this scenario, most web shops give the user the option to manually fill in the remainder of the information as they know that even when the call fails, the user still needs a way to continue. So in a sense, the webshop has taken the responsibility of handling success and failure responses. 54 +* The key aspects are: 55 + * Entry is the starting point of the integration process in messaging 56 + * Queues are an internal resource of eMagiz 57 + * Outside parties are not allowed to write on eMagiz queues directly 58 + * eMagiz facilitates various connectivity methods (i.e., REST, SOAP, Database, File) 52 52 53 -=== 3.2 Asynchronous vs Synchronous === 54 54 55 -The decision to handle an integration process in a specific manner depends on various relevant business and technical checks and balances that should be answered before choosing which integration pattern to choose and then subsequently which alternative method within an integration pattern to choose. If you want more information on how to decide this correctly, please check out this [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Discover your integration landscape.intermediate-discover-your-integration-landscape-determining-integration-pattern||target="blank"]]. 56 56 57 -{{html}} 58 -<!-- 62 +== 6. Suggested Additional Readings == 59 59 60 - ==4.Assignment==64 +If you are interested in this topic, please boost your knowledge with the help of the internet. 61 61 62 -Analyze a synchronous messaging flow from entry to exit and learn what happens within this process. 63 -This assignment can be completed with the help of your (Academy) project you have created/used in the previous assignment. 66 +== 7. Silent demonstration video == 64 64 65 ---> 66 -{{/html}} 68 +As this is a more theoretical microlearning, we have no video for this. 67 67 68 -== 4. Key takeaways == 69 - 70 -* Synchronous messaging is the less used, the less advised option when implementing a messaging integration via eMagiz 71 -* Key characteristics of synchronous messaging are: 72 - ** Blocking. The sender initiates the process and waits for a response before continuing with the following message 73 - ** Systems depend on the responses of other systems for their function 74 - ** Messages have a time limit. The response needs to be back within 25 seconds (eMagiz default) 75 - ** Uses a request-response structure that talks to one system at a time 76 -* Using the API Gateway pattern can be a valid alternative when dealing with a synchronous integration demand. 77 - 78 -== 5. Suggested Additional Readings == 79 - 80 -If you are interested in this topic and want more information on it please read the help text provided by eMagiz and read the following links: 81 - 82 -* [[Crash Course (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]] 83 -** [[Crash Course Messaging (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Messaging.WebHome||target="blank"]] 84 -*** [[Messaging Asynchronous (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Messaging.crashcourse-messaging-messaging-asynchronous||target="blank"]] 85 -** [[Crash Course API Gateway (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course API Gateway.WebHome||target="blank"]] 86 -* [[Intermediate Level (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.WebHome||target="blank"]] 87 -** [[Discover your integration landscape (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Discover your integration landscape.WebHome||target="blank"]] 88 -*** [[Determining Integration Pattern (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Discover your integration landscape.intermediate-discover-your-integration-landscape-determining-integration-pattern||target="blank"]] 89 -** [[Understanding Error Handling (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Understanding Error Handling.WebHome||target="blank"]] 90 -*** [[Error Handling in Messaging Synchronous (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Understanding Error Handling.intermediate-understanding-error-handling-in-emagiz-messaging-synchronous||target="blank"]] 91 -* [[Messaging Synchronous (Search Results)>>url:https://docs.emagiz.com/bin/view/Main/Search?sort=score&sortOrder=desc&highlight=true&facet=true&r=1&f_space_facet=0%2FMain.&l_space_facet=10&f_type=DOCUMENT&f_locale=en&f_locale=&f_locale=en&text=%22messaging+synchronous%22||target="blank"]] 92 92 ))) 93 93 94 94 ((({{toc/}}))){{/container}}