Ich habe eine App, die Nachrichten auf einem epgm PUB-Socket an einen oder mehrere epgm SUB-Sockets sendet. Die Dinge funktionieren meistens, aber wenn eine abonnierende Anwendung lange genug belassen wird, wird es im Allgemeinen am Ende eine Nachricht oder ein paar Nachrichten verpassen. (Meine Nachrichten haben Sequenznummern, sodass ich feststellen kann, ob sie fehlen oder nicht in Ordnung sind.) Basierend auf meiner Lektüre der ZMQ-Dokumente hätte ich gedacht, dass die "zuverlässige Multicast" -Natur von epgm verhindern würde, dass dies geschieht Nachdem ein SUB-Socket eine Nachricht erhalten hat, wird diese immer bis zum Herunterfahren oder bis zu schwerwiegenden Netzwerkproblemen (dh die Verbindung ist ausgereizt) erhalten.Welche Zuverlässigkeit garantiert (wenn überhaupt) ZMQ für PUB/SUB über EPGM?
Wie auch immer, das ist der Kontext, aber die Frage ist nur der Titel: Welche Zuverlässigkeit garantiert (wenn überhaupt) macht ZMQ für PUB/SUB über epgm?
Setzen Sie im Publisher ein höheres Wasserzeichen? –
Verwenden Sie einfach den Standard. Nachrichtenrate ist nicht hoch, 2 10B-160KB Nachrichten pro Sekunde, jeweils in einem Frame. (Die durchschnittliche Nachrichtengröße beträgt 80 KB.) Die Zahl 1000 war mehr als genug. – scott
Haben Sie verifiziert, dass der Rückkanal korrekt funktioniert: verwenden Sender und Empfänger die richtigen Netzwerkschnittstellen? Sie können beispielsweise dem PGM-Protokoll in WireShark folgen. –