Wenn ich eine BrokeredMessage abbringe, erhöht sich die Anzahl der Nachrichtenlieferungen und trägt dazu bei, dass sie in die Dead Message Queue gestellt wird?Ruft der Aufruf von Abandon auf einer Azure BrokeredMessage die Zustellungsnummer auf
Antwort
Als ich ein BrokeredMessage verlassen funktioniert die Nachrichten Lieferung Zahl Zuwachs und somit dazu beitragen, es im Toten Nachricht Queue gestellt werden?
Ja, es ist genau. Jedes Mal, wenn Sie eine Nachricht abbrechen, wird die Anzahl der Zustellungen um 1 erhöht. Und wenn die maximale Anzahl von Zustellungen erreicht ist (was 10 ist), wird sie an die Warteschlange für unzustellbare Nachrichten gesendet.
BrokeredMessage.Abandon() entsperren nur eine Nachricht in der Warteschlange, so dass andere Benutzer die Nachricht finden und sperren können. Es funktioniert nur im peekLock-Modus.
Wenn eine Empfängeranwendung die Nachricht aus irgendeinem Grund nicht verarbeiten kann, kann sie die Abandon-Methode für die empfangene Nachricht aufrufen (anstelle der Complete-Methode). Dies veranlasst den Servicebus, die Nachricht innerhalb der Warteschlange zu entsperren und sie für einen erneuten Empfang verfügbar zu machen, entweder durch dieselbe verbrauchende Anwendung oder durch eine andere konsumierende Anwendung.
Sie können auf diesen Artikel verweisen: https://azure.microsoft.com/en-us/documentation/articles/service-bus-dotnet-how-to-use-queues/ zu sehen, wie Nachrichten aus einer Warteschlange empfangen werden.
Über wie BorkerMessage.Abandon() verwenden, verweisen Sie bitte https://msdn.microsoft.com/en-us/library/azure/hh181837.aspx
- 1. Ruft der Aufruf von Clear auch die Artikel auf?
- 2. NoDriver Aufruf acmFormatSuggest auf Azure
- 3. Verwenden von BrokeredMessage mit ServiceBus Warteschlangenauslöser in Azure-Funktion
- 4. Encoding von BrokeredMessage Körper in Azure Service Bus
- 5. Wie Filtern einer ServiceBus-Thema-Subskription basierend auf einer integrierten Eigenschaft der BrokeredMessage-Klasse?
- 6. BrokeredMessage entsorgt
- 7. NSCell -stringValue ruft -setStringValue auf?
- 8. Silverlight ruft WCF auf
- 9. Abandon Sitzung während Anfrage
- 10. C# 4.0 - Ruft der Aufruf einer geschützten Methode für ein dynamisches Objekt TryInvokeMember() auf?
- 11. Bereitstellen auf der Azure-Website von Appveyor
- 12. Aufruf einer Funktion auf der diesem Begriff
- 13. azure queue service ruft performance
- 14. Ruft RandomAccessFile.close() intern FileChannel.force() auf?
- 15. SQLite auf der Azure-Website
- 16. IsUserInRole ruft GetRolesForUser auf?
- 17. Der erste Aufruf von Url.Action auf einer Seite ist langsam
- 18. Up Button ruft OnDestroy der Elternaktivität auf
- 19. Memberfunktionszeiger ruft Kopierkonstruktor auf?
- 20. Warum ruft der Zuweisungsoperator den Konstruktor auf?
- 21. Warum ruft StringCollection von Einstellungen langsam auf?
- 22. Ruft die Initialisierung der Kopieliste cctor konzeptionell auf?
- 23. Was ist der richtige Weg, um eine Azure SB-Nachricht aufzugeben, damit sie in Zukunft auf eine Weise sichtbar wird, die ich kontrollieren kann?
- 24. InvokeCommandAction ruft nicht auf
- 25. PHP Aufruf einer Methode auf einer ReflectionClass
- 26. * Dies ruft Konstruktor auf?
- 27. UIWebView ruft nicht die Funktion stringbyAppendingJavascript auf
- 28. Lizenzierung von Softwareprodukten auf Azure
- 29. Verwendung von Redis auf Azure
- 30. Thread-Pool ruft Blockierungsmethoden auf
Für zukünftige Leser. Wenn Sie eine Möglichkeit haben, "aufzugeben", die die Anzahl der Lieferungen nicht erhöht, finden Sie unter "Erneut senden" hier http://markheath.net/post/defer-processing-azure-service-bus-message Die Idee ist im Grunde zu klonen Sie die Nachricht, vervollständigen Sie die ursprüngliche Nachricht und senden Sie die geklonte Nachricht und optional eine benutzerdefinierte Eigenschaft, um die Anzahl der Wiederholungen zu erhöhen. NICHT atomar, aber vielleicht die beste Problemumgehung. – granadaCoder