2017-01-24 5 views
1

Ist Google PubSub für kleine (10 msg/s) aber geschäftskritische Nachrichten geeignet, bei denen die zeitgerechte Zustellung jeder Nachricht innerhalb eines bestimmten Zeitraums garantiert ist?Google PubSub Reliability

Oder ist es eher geeignet für Hochdurchsatz, bei denen einzelne Nachrichten können auf unbestimmte Zeit gelegentlich verloren oder verzögert werden?

Edit: diese Frage ein wenig anders formulieren: Ist es wahr, dass eine bestimmte Nachricht in PubSub, unabhängig von Volumen von Nachrichten erzeugt, kann auf unbestimmte Zeit verzögert werden?

Antwort

3

Google Cloud Pub/Sub garantiert die Zustellung aller Nachrichten, ob geringer Durchsatz oder eine hoher Durchsatz, so dass es keine Besorgnis über Meldungen sollte verloren gehen.

Latenz für die Nachrichtenübermittlung von Publisher Teilnehmern hängt von vielen verschiedenen Faktoren ab. Insbesondere ist die Geschwindigkeit, mit der der Teilnehmer Nachrichten verarbeiten und mehr Nachrichten anfordern kann, von entscheidender Bedeutung. Für Pull-Abonnenten bedeutet dies immer mehrere ausstehende Pull-Anforderungen an den Server. Für Push-Abonnenten sollten sie so schnell wie möglich einen erfolgreichen HTTP-Antwortcode zurückgeben. Sie können mehr über die difference between push and pull subscribers lesen.

Google Cloud Pub/Sub versucht Latenz so weit wie möglich zu minimieren, obwohl es keine Garantien gibt. Empirisch liefert Cloud Pub/Sub konsistent Nachrichten in nur wenigen Sekunden beim 99. Perzentil. Wenn Ihre Publisher oder Abonnenten nicht auf der Google Cloud Platform ausgeführt werden, kann auch die Netzwerklatenz zwischen Ihren Servern und Google-Servern eine Rolle spielen.

+0

Danke! Aber zuerst sagst du "garantiert die Lieferung aller Nachrichten", dann sagst du "es werden keine Garantien gemacht". Für mich bedeutet das, dass eine einzelne Nachricht mit jeder Verzögerung ankommen könnte. –

+0

Es gibt keine Garantie für die Latenz, aber Cloud Pub/Sub garantiert, dass keine Nachrichten verloren gehen. Mit anderen Worten, die durch den Dienst verursachte Latenz wird sicherlich niemals 7 Tage überschreiten, die Ablaufzeit von Nachrichten. Schließlich kann Cloud Pub/Sub Latenzgarantien bieten. End-to-End-Garantien sind jedoch schwer zu quantifizieren, da sie sehr stark auf dem Kundenverhalten basieren. –

+1

Keine Garantien über die Latenz bedeutet gleichermaßen, dass Nachrichten aus der Sicht des Unternehmens verloren gehen können. Trotzdem danke. Zur Quantifizierung wäre es hilfreich, wenn Google (oder irgendjemand anders) einige Verzögerungshistogramme der häufigsten Szenarien teilen könnte, wie z. B. Verkehr mit hohem/niedrigem Volumen, Verkehr mit Spitzen usw. Ein paar Sekunden für 99 sind ziemlich vage. –

Verwandte Themen