Comunicación entre servicios#

En algunas ocasiones, los servicios tienen diferentes métodos que pueden ser utilizados por los clientes o por otros servicios.

El principal problema subyacente para poder comunicarse con un servicio y realizar una invocación remota es averiguar su proxy. Para ello, los servicios anunciarán su proxy en un canal de eventos.

A su vez, es posible que haya más de 1 servicio de cada tipo ejecutándose a la vez: por ejemplo, podemos tener varios Authenticator o varios MediaCatalog, incluso utilizando diferentes implementaciones.

Dichas instancias de un mismo servicio, en muchas ocasiones, necesitarán comunicarse entre ellas para actualizar sus estados. Para ello, también utilizaremos canales de eventos a los que los servicios se subscribirán para recibir actualizaciones de estado del resto de instancias.

A su vez, el cliente deberá subscribirse al canal de eventos de anunciamientos para ser capaz de descubrir los servicios a los que necesita conectarse para realizar las diferentes tareas.

En el siguiente apartado, se detallarán las comunicaciones que se llevarán a cabo a través de canales de eventos.