Я работаю над требованием, когда вам нужно отправить формы в базу данных RDS. Формы не должны быть больше 20 КБ. Могут быть пики для отправки формы, и нам может потребоваться поддержка 300 000 одновременно работающих пользователей.
Есть несколько вариантов, которые я могу придумать
1) Клиент -> Шлюз Api -> Лямбда - > S3 (триггер) -> лямбда -> RDS
2) Клиент -> Api-шлюз -> лямбда -> SQS (триггер) -> лямбда -> RDS
Во 2-м подходе лямбда (выделенная жирным шрифтом) также будет храниться в S3 (не показано) для постоянного хранения формы на случай, если мне потребуется go вернуть назад и повторно обработать их.
Мы должны рассмотреть следующие вещи:
1) Пропускная способность записи (лямбда-запись в s3 или sqs должна быть быстрой)
2) Постоянное хранилище (я могу go назад и воспроизвести сообщения)
3) В случае сбоя вставки в RDS, например, DLQ