message-queue - sub - zmq req
diferencia entre pub-sub y push-pull en zeroMq (1)
La diferencia es que un socket PUB
envía el mismo mensaje a todos los suscriptores, mientras que PUSH
realiza un round-robin entre todos sus sockets PULL
conectados.
En su ejemplo, si envía un solo mensaje desde la raíz, todos los suscriptores lo recibirán (salvo los suscriptores lentos, etc.) pero solo 1 trabajador.
El patrón pub / sub se usa para la distribución amplia de mensajes según los temas. El patrón de empujar / tirar es realmente un mecanismo de tubería. Su ejemplo de push / pull parece estar intentando equilibrar la carga, lo cual está bien, pero req / rep podría ser más adecuado para eso debido a otros problemas.
Parece que los "problemas" aquí se describen en la misma parte de la guía 0MQ de la que obtuvo la imagen: ejemplo de ventilador de empujar / tirar
Estas dos imágenes son de http://zguide.zeromq.org/page:all .
¿Cuál es la diferencia entre estos dos patrones si ignoramos el hundimiento en el patrón push-pull? ¿Hay alguna diferencia en cómo se transfiere un mensaje? En caso afirmativo, ¿cuál es la diferencia?