TGViewer
Node.js Recipes Node.js Recipes @node_recipes · 3.1K subscribers
Post #511 2.78K
☁️ Як налаштувати retry у AWS SDK?
#aws

Багато розробників не знають або забувають, що AWS SDK має повторні спроби (retry). Це включено за замовчуванням. SDK зробить retry якщо помилка є тимчасовою (HTTP коди 400, 408, 500, 502, 503 і 504) або регулювання (HTTP коди 400, 403, 429, 502, 503 і 509) чи таймаутом.

Якщо ви використовуєте JavaScript SDK v2, тобто aws-sdk, настав час його оновити. Налаштування retry можна зробити тільки для всіх сервісів відразу, але аналіз коду показує, що вони застосовуються не скрізь. Детальніше

Найпопулярнішим клієнтом SDK v3 є @aws-sdk/client-s3. Він, як і всі v3 пакунки, дозволяє налаштувати maxAttempts і retryMode. Приклад:
const { S3 } = require('@aws-sdk/client-s3');
const client = new S3({ retryMode: 'standard', maxAttempts: 10 });

retryMode може бути standard (за замовчуванням) і adaptive. В адаптивному режимі ви можете встановити власну реалізацію rateLimiter. Подробиці можна знайти у коді @aws-sdk/middleware-retry

Для конфігурації AWS SDK бере параметри:
– з кода
– зі змінних оточення (AWS_MAX_ATTEMPTS/AWS_RETRY_MODE)
– з CLI сonfig profile (max_attempts/retry_mode)
– або використовує значення за замовчуванням (3/standard)
* Розташування наведено в порядку зменшення пріоритетності.

Особисто мені не подобаються значення за замовчуванням. Вони створюють магію 🪄. Тому, щоб не забувати про наявність retry у aws проектах я використовую AWS_REGION та AWS_MAX_ATTEMPTS у .env.example.
  • 👍 25
More from @node_recipes
  1. Jan 5, 2026По всьому світу проходять Cursor Meetups, де локальні спільноти діляться досвідом використ…
  2. Jan 5, 2026Думки на вихідних: Full Stack Learning Подивився останнє відео Сергія Немчинського про фул…
  3. Dec 31, 2025Залишаються лічені години 2025-го. І будьмо чесними: сам перехід на 2026-й нічого автомати…
  4. Dec 25, 2025Моє відкриття 2025 року, як доповідача, це Napkin.ai. На малюнку приклад того, як Napkin г…
  5. Dec 23, 2025А ось й ChatGPT додав 2025 review feature. Авжеж в мене half coded Nest.js app, як ще :)
  6. Dec 23, 2025Моє технічне відкриття 2025 року — centrifugal.dev У 2025-му я багато працював із реальним…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →