Опис проєкту
ПерекладГоловна причина вибору такого підходу — економіка й масштабування. Трафік рваний і непередбачуваний: годинами тиша, потім різкий всплиск. Ми хочемо, щоб бекенд масштабувався до нуля, коли ним ніхто не користується, і ми платили тільки за фактичні виклики й спожиті ресурси, а під навантаженням автоматично розгортався вшир без нашої участі. Холодні старти потрібно тримати в розумних межах: адекватний добір пам'яті, легкі залежності й provisioned concurrency тільки там, де критичний шлях дійсно цього вимагає. Схему доступу до DynamoDB важливо спроектувати заздалегідь, а не прикручувати потім, — саме це рішення визначає більшу частину продуктивності й вартості.
Усе мало б відтворюватися як Infrastructure as Code — Terraform або AWS SAM/CDK на ваш вибір, але ніяких ручних кліків у консолі. Потрібні окремі середовища dev, staging та production, піднімаємі з одних шаблонів, IAM-ролі з мінімальними правами на кожну функцію, структуроване логування й трасування (CloudWatch, X-Ray), сигналізація на помилки й троттлінг, а також CI/CD-конвеєр із деплоєм за мержем. Просимо включити:
— API Gateway і обробники Lambda з валідацією вхідних даних і внятними відповідями про помилки;
— проектування DynamoDB (однотабличне або багатотабличне) з задокументованими паттернами доступу;
— EventBridge/SQS для фонових завдань, ретрай та dead-letter-черги;
— повна IaC, розділення середовищ та робочий конвеєр деплоя.