es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Comunicación muchos a muchos.

Tengo varios servidores que manejan las mismas solicitudes y varios clientes que envían solicitudes. Los servidores son enrutadores para mantener/seguir la identidad de los clientes y los clientes son distribuidores que balancean las solicitudes entre los servidores. ¿Tiene sentido esta pareja de distribuidor/enrutador sin un intermediario? Funciona y se ajusta a mis necesidades, pero no veo este patrón en las guías oficiales.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, el par distribuidor/enrutador puede funcionar sin un intermediario y tiene sentido para ciertos casos de uso. Este patrón se conoce como el patrón “Pirata Paranoico” en la documentación de ZeroMQ. Está diseñado para situaciones donde la confiabilidad y la tolerancia a fallos son críticas, ya que garantiza que los mensajes no se pierdan incluso si algunos servidores fallan.

    En el patrón Pirata Paranoico, los clientes envían solicitudes al enrutador, que las reenvía a los servidores disponibles. Luego, los servidores envían respuestas al enrutador, que las reenvía al cliente correspondiente. El uso de un enrutador asegura que cada cliente esté identificado de manera única y que los mensajes estén equilibrados entre los servidores de manera round-robin.

    Si bien este patrón puede no mencionarse en las guías oficiales, es una forma válida y útil de construir un sistema distribuido con ZeroMQ. Es importante tener en cuenta que este patrón requiere una implementación cuidadosa, ya que el orden de los mensajes y los tiempos de espera de la red deben manejarse adecuadamente para garantizar una comunicación confiable.

Comments are closed.