Still a very new approach to studying application architecture and problems with some ideas in the microservice book. In my readings, I came across an older idea of โโESB (Enterprise Service Bus) and its role in coordinating messages between new services and legacy applications. ESBs are touted as a solution to point-to-point integration issues. Microservices seems to be the approach adopted by newer companies as the de facto standard for creating a flexible, scalable and flexible application. But aren't microservices using point-to-point integration? Each node in an application created from microservices directly communicates with other nodes, right? I feel like connecting a few dots that should not be connected. Any help is greatly appreciated, thanks in advance.
Microservices are not necessarily strictly dependent on point-to-point integration.
Direct communication problems are often addressed in the microservice architecture using a message broker. If communication can be performed asynchronously - โfire and forgetโ - the application sending the message does not become inoperative if the receiver goes down. And the messages will still be present when the receive service returns.
If microservices are integrated via REST, the caller must know how to respond if another service is not responding. Since it gets hairy when you save data through systems (i.e. a Distributed Transaction), I like to use REST only for the data lookup API. And they are all saved as a result of messages.
, ESB , . . .
ESB - , . , , ESB , .
, ESB , , .
, , .
, - , , , - .
. (kafka, AMQP, Akka, JMS...) http-. ( , ) .
Microservices: REST vs Messaging https://capgemini.imtqy.com/architecture/is-rest-best-microservices/
ESB.
Microservices -, API. . API , "-" (). , API, , ( ESB). API- ESB , , . API- /.
ESB , API ( ), , , -, . ESB , .
ESB , , ESB API-.
API- , ESB.
Source: https://habr.com/ru/post/1686002/More articles:jQuery - drag and drop between divs when resizing an element - javascriptC # ForEach Loop With ASync Tasks and Dependent Messages ASync Tasks - c #Automapper profiles not loading in Startup? - c #Raven Sentry not working in latest Angular 4 - javascriptDeutsch coding algorithm - pythonFailed to debug Azure timer function in Visual Studio 2017 - functionWhy does ftell skip some positions in the file? - cYou need to trim the last line of characters only if it is empty or "." - rUpdating the spline class on the chart so that the highest peak is the marker position - JPGraph - phpHtml canvas content for ios11 web browser cleared by scrolling page - canvasAll Articles