2016-08-08 42 views
0

Ich würde eine Warteschlange benötigen, die nicht in "Bereit" Zustand ansammelt.RabbitMq direkte Warteschlange, die nicht in "Bereit" Zustand ansammelt?

Das heißt, wenn ein Teilnehmer der Warteschlange ist, übergeben Sie die Nachrichten von der Vermittlungsstelle direkt an sie, und wenn es keinen Teilnehmer gibt, verschwenden Sie die Nachrichten, sammeln Sie sie nicht im "Bereit" -Zustand.

Ich weiß, dass ein Austausch vom Typ fanout dies tut, aber ich möchte in der Lage sein, den Routing-Schlüssel zu verwenden und ein fanout Austausch ignoriert die Routing-Schlüssel. Mein Szenario ist kein Broadcasting, es ist 1 Publisher und 1 (manchmal abwesend) Abonnent.

Ist es möglich, einen direkten Austausch zu haben, bei dem die Warteschlange keine Nachrichten im "Bereit" -Zustand anhäuft, wenn es keinen Teilnehmer gibt?

Antwort

1

ok Ich glaube, ich muss die Warteschlange mit auto-delete zu true

erklären und stellen Sie die mandatory Bit true auf den BasicPublish Anrufe

es bisher scheint zu funktionieren ...

+0

auch das machen Warteschlange "exklusiv", wenn nur der eine Verbraucher, der es erstellt hat, davon konsumieren sollte –

+0

@DerickBailey ok, werde versuchen, danke für den Tipp! – ibiza