Учебники

DynamoDB — Обработка ошибок

При неудачной обработке запроса DynamoDB выдает ошибку. Каждая ошибка состоит из следующих компонентов: код состояния HTTP, имя исключения и сообщение. Управление ошибками основывается на вашем SDK, который распространяет ошибки, или на вашем собственном коде.

Коды и сообщения

Исключения попадают в разные коды состояния HTTP-заголовка. 4xx и 5xx содержат ошибки, связанные с проблемами запросов и AWS.

Ниже перечислены некоторые исключения в категории HTTP 4xx.

  • AccessDeniedException — клиент не смог правильно подписать запрос.

  • ConditionalCheckFailedException — условие, оцененное как ложное.

  • IncompleteSignatureException — запрос включал неполную подпись.

AccessDeniedException — клиент не смог правильно подписать запрос.

ConditionalCheckFailedException — условие, оцененное как ложное.

IncompleteSignatureException — запрос включал неполную подпись.

Исключения в категории HTTP 5xx следующие:

  • Внутренняя ошибка сервера
  • Сервис недоступен

Повторные попытки и алгоритмы возврата

Ошибки происходят из различных источников, таких как серверы, коммутаторы, балансировщики нагрузки и другие элементы структур и систем. Общие решения состоят из простых повторных попыток, что обеспечивает надежность. Все SDK включают эту логику автоматически, и вы можете установить параметры повтора в соответствии с потребностями вашего приложения.

Например — Java предлагает значение maxErrorRetry, чтобы остановить повторные попытки.

Amazon рекомендует использовать решение для отсрочки в дополнение к повторным попыткам, чтобы контролировать поток. Это состоит из постепенно увеличивающихся периодов ожидания между повторными попытками и, в конечном счете, остановки после довольно короткого периода. Примечание. SDK выполняют автоматические повторные попытки, но не экспоненциальный откат.

Следующая программа является примером отката повторной попытки —