1

Ich habe einen 5 Knoten-Cluster hat jeder Knoten einen Micro (dies ist ein stateless zuverlässiger Service) läuft, die Nachrichten von Azure Service Bus empfängt.Service Bus mehr Zuhörer Instanzen mit dem gleichen Abonnement nicht Empfangen von Nachrichten

Da ich nur eine my_Subscription (Subskriptionsname) für my_topic (Topic Name) erstellt habe, empfangen die Microservice-Instanzen Nachrichten nach dem Zufallsprinzip.

Ich habe erwartet, dass es ausgestrahlt wird, da jede Instanz das Servicebus-Thema abonniert hat.

Wenn dies der Fall wird, muss ich ein neues Abonnement pro Instanz erstellen, muss ich die ARM template ändern und es jedes Mal neu implementieren, wann immer ich meine Dienste skalieren möchte?

+0

Ist dieses erwartete Verhalten nicht in Anbetracht all Ihrer Microservice-Instanzen, die nur ein Abonnement abfragen? –

+0

@GauravMantri Wenn ich in diesem Fall ein neues Abonnement pro Instanz erstellen muss, muss ich die ARM-Vorlage ändern und jedes Mal neu bereitstellen, wenn meine Services skaliert werden sollen. –

+0

Sie möchten, dass dieselbe Nachricht für alle Instanzen verfügbar ist. Richtig? –

Antwort

0

Wenn Sie Ihre Cluster-Knoten erstellen können, erstellen Sie im laufenden Betrieb ein eigenes Abonnement (was nicht allzu schwierig sein sollte). Vielleicht verwenden Sie so etwas wie die eindeutige ID des Knotens für den Subskriptionsnamen. Dann würde jeder Knoten nur seine eigene Kopie der Nachricht erhalten und Ihr Ziel erreichen. Wenn Ihre Knoten jedoch ständig kommen und gehen, müssen Sie einen Bereinigungsmechanismus implementieren, um sicherzustellen, dass veraltete Abonnements den Speicher des Themas nicht blockieren.

Verwandte Themen