Ihr APIM-Gateway leitet Anfragen an ein Backend weiter, das zeitweise 500 oder 504 zurückgibt. Sie müssen fehlgeschlagene Aufrufe bis zu dreimal mit einer Verzögerung von einer Sekunde wiederholen, aber nur für diese beiden Statuscodes. Welche Richtlinienkonfiguration sollten Sie verwenden?
Wählen Sie eine Antwort
Tippen Sie auf eine Option, um Ihre Antwort zu überprüfen.
Richtige Antwort: Umschließen Sie den Backend-Aufruf mit einer Wiederholungsrichtlinie: <retry count="3" interval="1" condition="@(context.Response.StatusCode == 500 || context.Response.StatusCode == 504)">`<forward-request />`</retry>..
Warum dies die Antwort ist
Die korrekte Richtlinienkonfiguration verwendet das <retry-Element, um den <forward-request /-Aufruf zu umschließen. Dies ermöglicht die Wiederholung des Backend-Aufrufs. Die Attribute count="3" und interval="1" legen fest, dass maximal dreimal mit einer Verzögerung von einer Sekunde wiederholt wird. Die condition @(context.Response.StatusCode == 500 || context.Response.StatusCode == 504) stellt sicher, dass Wiederholungen nur bei den Statuscodes 500 (Internal Server Error) oder 504 (Gateway Timeout) erfolgen, wie in der Anforderung spezifiziert. Die Option ohne Bedingung ist falsch, da sie alle fehlgeschlagenen Anfragen wiederholen würde, nicht nur die spezifischen Statuscodes. Die Verwendung von set-variable und send-request mit JavaScript ist zu komplex und nicht der beabsichtigte Weg, da die retry-Richtlinie genau für diesen Anwendungsfall existiert. Das Einstellen des Timeouts für forward-request wiederholt Anfragen nicht automatisch; es legt lediglich fest, wie lange APIM auf eine Antwort vom Backend wartet, bevor es selbst ein Timeout auslöst.
Bestehen Sie Ihre Prüfung – ohne endlose Antwortsuche
Erhalten Sie jede verifizierte Frage und Erklärung für diese Prüfung an einem Ort und sparen Sie Stunden der Vorbereitung. Über 1.000 Zertifizierungen · Über 20 Sprachen · Kostenloser Start.
Bestehen Sie Ihre Prüfung schneller → Keine Karte erforderlich