Masz funkcję Azure Function wyzwalaną przez Service Bus, która wywołuje ograniczane API podrzędne. W przypadku przejściowych błędów chcesz ponowić próbę do 5 razy, używając wykładniczego wycofywania z opóźnieniami od 2 sekund do 1 minuty. Po ponownych próbach wiadomość powinna zostać przeniesiona do kolejki martwych wiadomości przez Service Bus. Jak należy skonfigurować ponawianie prób?
Wybierz odpowiedź
Dotknij opcji, aby sprawdzić swoją odpowiedź.
Poprawna odpowiedź: Dodaj do host.json: "retry": { "strategy": "exponentialBackoff", "maxRetryCount": 5, "minimumInterval": "00:00:02", "maximumInterval": "00:01:00" }..
Dlaczego to jest odpowiedź
Poprawna odpowiedź konfiguruje wbudowaną politykę ponawiania prób Azure Functions dla wyzwalaczy Service Bus. Użycie exponentialBackoff z maxRetryCount: 5, minimumInterval: "00:00:02" i maximumInterval: "00:01:00" spełnia wszystkie wymagania scenariusza: ponawianie do 5 razy z wykładniczym wycofywaniem w określonym zakresie czasowym. Po wyczerpaniu ponownych prób, wiadomość jest automatycznie przenoszona do kolejki martwych wiadomości przez Service Bus, co jest domyślnym zachowaniem dla nieprzetworzonych wiadomości. Opcja z fixedDelay nie spełnia wymogu wykładniczego wycofywania. Ustawienie MaxDeliveryCount w Service Bus bez konfiguracji ponowień w funkcji spowoduje, że Service Bus będzie liczył próby dostarczenia, ale nie zarządzał logiką ponowień w ramach funkcji. Implementacja Polly w kodzie funkcji jest możliwa, ale konfiguracja w host.json jest preferowanym i prostszym rozwiązaniem dla tego scenariusza, wykorzystującym wbudowane możliwości platformy.
Zdaj egzamin — bez niekończącego się szukania odpowiedzi
Uzyskaj wszystkie zweryfikowane pytania i wyjaśnienia do tego egzaminu w jednym miejscu i zaoszczędź godziny przygotowań. Ponad 1000 certyfikacji · Ponad 20 języków · Zacznij za darmo.
Zdaj egzamin szybciej → Karta nie jest wymagana