Oder ist dieses Verhalten nur verfügbar, wenn die Funktion ausgeht.Wenn die Azure-Funktion abgelaufen ist, wird die Auslösenachricht in der Azure-Warteschlange gespeichert?
Dies ist für eine Queue-ausgelöste Funktion.
Oder ist dieses Verhalten nur verfügbar, wenn die Funktion ausgeht.Wenn die Azure-Funktion abgelaufen ist, wird die Auslösenachricht in der Azure-Warteschlange gespeichert?
Dies ist für eine Queue-ausgelöste Funktion.
Wenn eine Funktion ohne Fehler abgeschlossen wird, markiert die Funktion die Nachricht automatisch als abgeschlossen und sie wird aus der Warteschlange entfernt.
Andernfalls wird die Nachricht wieder in die Warteschlange gestellt. Dies macht es sichtbar, um erneut verarbeitet zu werden. Beachten Sie jedoch, dass bei jeder Verarbeitung der Nachricht der Wert DeliveryCount
inkrementiert wird. Wenn DeliveryCount
die MaxDeliveryCount
der Warteschlange überschreitet, wird die Nachricht in die Unterwarteschlange "Dead Message" verschoben.
So zu produzieren, wird Timeout als eine Fehlerbedingung betrachtet? Ich vermute, dass es einen Orchestrator-Prozess gibt, der den Status der Funktion überprüft. Hängt dieser Prozess von der Funktion ab, seinen eigenen Status zu sagen? –
Ich glaube, die Eigenschaft heißt 'dequeueCount', der Maximalwert ist auf 5 festgelegt und die Nachrichten werden in die '
Wie Mikhail erwähnt, versucht Funktion automatisch, eine Nachricht 5 Mal zu verarbeiten. Wenn es nach 5 Versuchen fehlschlägt, wird es automatisch in die Warteschlange <queuename>-poison
verschoben.
Es folgen zwei verwandten Beiträge Schuppen ein wenig mehr Licht auf die, wie Warteschlangennachrichten und verarbeitet
Hier einige Dokumentation auf handling poison queue messages ist.
Ich hoffe, dies klärt die Dinge für Sie.
Warum versuchst du es nicht einfach? Sollte ein ziemlich einfaches Szenario sein, –