Microservice communication

The RecommendationService microservice is a completely new microservice with communication features we already know and others that are equally new. This microservice will consist of an API with HTTP endpoints and a message reader that is going to read messages sent from NewsOrchestrator, which is the microservice responsible for the orchestration of data.

The messages sent are asynchronous and carried through a dispatcher. In this way, the microservice that sends messages does not get blocked threads waiting for a response.

A system of messaging and non-blocking communication is the heart of the asynchronous messaging design pattern. Basically, this pattern has a focus on the communication layer.

Due to the asynchronous character of the microservice that this pattern uses, it is fundamental to use communication tools that are resilient or have an efficient retry mechanism. In our microservice, we are using RabbitMQ because it has a transactional messaging system. Other tools can be used, but it is always good to keep in mind something that offers resilience.

To successfully apply the asynchronous messaging design pattern, more important than the chosen tool, you should fully understand the domain's business to see what can communicate asynchronously and apply the pattern as much as possible.

Obviously, the asynchronous messaging design pattern is not just an available style of communication. It is far beyond that; it is the ability to develop fully independent microservices where the return of a response is irrelevant to the business.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.178.144