Entre la comunicación sincrónica y asincrónica, ¿cuál es el tipo preferido para la arquitectura de microservicios?

La comunicación síncrona es una llamada de bloqueo en la que el cliente se bloquea para no hacer nada más, hasta que la respuesta vuelve. En la comunicación asincrónica, el cliente puede seguir adelante con su trabajo después de realizar una llamada asincrónica. Por lo tanto, el cliente no está bloqueado.

En la comunicación sincrónica, un microservicio puede proporcionar una respuesta instantánea sobre el éxito o el fracaso. En sistemas en tiempo real, el servicio sincrónico es muy útil. En la comunicación asincrónica, un servicio debe reaccionar en función de la respuesta recibida en el futuro.

Los sistemas síncronos también se conocen como solicitud / respuesta basada. Los sistemas asincrónicos están basados ​​en eventos.

Los microservicios sincrónicos no están acoplados libremente.

Dependiendo de la necesidad y la naturaleza crítica del dominio comercial, Microservices puede elegir una forma de comunicación síncrona o asíncrona.

Depende principalmente de la naturaleza de su aplicación. Los microservicios pueden elegir coreografía versus orquestación para la comunicación.

La coreografía es un modo asincrónico de comunicación.

La orquestación es comunicación sincrónica.

Si desea construir un sistema débilmente acoplado, busque la comunicación asincrónica en Microservicios.

Referencia: preguntas de la entrevista de microservicios: buena colección de preguntas en entrevistas técnicas a nivel de arquitecto