Если у вас сложная бизнес-логика / сложные отношения, выполнение которых может занять больше времени, тогда вам следует быть осторожным при использовании комбинации Lambda
и API Gateway
по следующим причинам:
Api Gateway
очень полезен в случае написания API только в том случае, если вы уверены, что ваши API работают быстро и быстро принесут ответ.В настоящее время API gateway
имеет жесткий предел времени ожидания через 29 секунд .Это означает, что если вашему API требуется более 29 секунд, он будет напрямую завершать этот запрос. - Нечто подобное происходит и с
lambda
.Lambdas
специально разработаны для обработки небольших кусков обработки.В настоящее время он поддерживает максимальный объем памяти 3008 МБ и время ожидания 5 минут .Через 5 минут лямбда прекратит обработку запроса.
Таким образом, ваш вариант 1 имеет эти ограничения, в противном случае это комбинированное сочетание действительно просто и экономно по времени + AWS Cognito
.
Теперь давайте рассмотрим ваш вариант 2.
Вариант 2 широко используется в основном для монолитных приложений, поскольку они большие, более сложные и требуют много времени.
Если вы думаете пойти на это, я хотел бы сообщить вам, что API Gateway
не будет полезен из-за жесткого ограничения времени ожидания, указанного выше.В этом случае аутентификация может быть выполнена с использованием широко доступных методов, таких как JWT
, OAuth
, Basic Auth
или даже AWS Cognito
.
Так что, на мой взгляд, если у вас есть архитектура на основе микросервиса, тоне будет никаких проблем с вариантом 1, при условии, что время будет выполнено!