Aplikacja zbudowana z użyciem Amazon API Gateway, AWS Lambda i Amazon DynamoDB zwraca coraz większą liczbę błędów dla żądań PUT. Większość żądań PUT pochodzi od niewielkiej grupy klientów uwierzytelnionych za pomocą kluczy API, a jeden klient generuje wiele z tych żądań. API jest niekrytyczne, a klienci mogą ponawiać nieudane żądania, ale widoczne błędy szkodzą postrzeganiu przez klientów. Co należy zalecić, aby poprawić doświadczenia klientów?
Wybierz odpowiedź
Dotknij opcji, aby sprawdzić swoją odpowiedź.
Poprawna odpowiedź: Zastosuj ograniczanie przepustowości (throttling) za pomocą planu użycia API Gateway dla kluczy API. Upewnij się, że aplikacja kliencka obsługuje odpowiedzi 429 (Too Many Requests) w sposób elegancki..
Dlaczego to jest odpowiedź
Prawidłowa odpowiedź to zastosowanie ograniczania przepustowości (throttling) za pomocą planu użycia API Gateway dla kluczy API. Problem wynika z tego, że jeden klient generuje zbyt wiele żądań PUT, co prowadzi do błędów. Ograniczanie przepustowości na poziomie API Gateway pozwala kontrolować liczbę żądań, jakie dany klient może wysłać w określonym czasie, zapobiegając przeciążeniu. Klienci otrzymają wtedy odpowiedzi 429 (Too Many Requests), co jest oczekiwanym zachowaniem i pozwala im na ponowienie żądań z opóźnieniem. Dodanie logiki ponawiania w aplikacji klienckiej jest dobre, ale nie rozwiązuje problemu źródłowego nadmiernych żądań od jednego klienta. Włączenie buforowania API nie pomoże w przypadku żądań PUT, które modyfikują dane, a nie tylko je pobierają. Ustawienie reserved concurrency w Lambdzie może pomóc w skalowaniu, ale nie zapobiega nadmiernym żądaniom od jednego klienta, które mogą nadal prowadzić do błędów w DynamoDB lub innych usługach.
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