Ich verwende ZeroMQ, um eine Publish / Subscribe-Umgebung zu ermöglichen, die ich brauche. Ich benutze einen Veröffentlichungsserver auf Maschine A mit Python (mit EventLoop), und jetzt habe ich einen Teilnehmer in C ++ auf Rechner B und einen zweiten Teilnehmer in Python (mit EventLoop) auf Rechner C laufen.
Wenn Maschine B Maschine A abonniert, bevor Maschine C dies tut, dann erhält B abonnierte Nachrichten und C nicht. Außerdem, wenn ich die etablierten Verbindungen auf Maschine A betrachte, gibt es nur eine Verbindung für Maschine B, aber nicht für C. Wenn Maschine C A abonniert, bevor B dies tut, dann ist es umgekehrt.
Hier ist mein Veröffentlichungscode:
%Vor%Hier ist mein Python-Teilnehmercode:
%Vor%Warum akzeptiert mein Publisher nicht mehrere eingehende Abonnenten-Sockets? Es ist wahrscheinlich erwähnenswert, dass mehrere Abonnenten einwandfrei funktionieren, wenn Sie sie auf Computer A ausführen, aber ich glaube nicht, dass es ein Firewall-Problem ist, weil ich Teilnehmerverbindungen von B und C zu A mit deaktivierter Firewall getestet habe.
Tags und Links zeromq