navigating async, non blocking, and reactiveness is a handfull... given 2 non blocking, reactive, vert.x/quarkus based, micro services A and B, where the constraint is that A MUST communicate with B via http. in case I want to keep service A reactive (non blocking):
Any help would be great. thanks
You can use the Vert.x Web Client which has an asynchronous and non-blocking API.
The Mutiny API for the Vert.x Web Client works with both Quarkus and Vert.x.
It works the same as the bare Vert.x Web Client, except the API is based on Uni
and Multi
.
I'm not very knowledgeable with the JDK11 HTTP Client. If your microservice A does nothing but sending HTTP requests to microservice B then perhaps using the JDK HTTP Client is just fine. But usually, a microservice also receives messages (HTTP, Kafka, ...etc) and interacts with a database. In this case it makes sense to leverage the integration of toolkit/framework.