Тайм-аут AWS Lambda слишком рано? - PullRequest
0 голосов
/ 30 сентября 2019

У меня есть функция (API) в AWS Lambda, которая подключается к DynamoDB в качестве хранилища данных. Одна конкретная конечная точка - это нечастое использование, но она принимает относительно большие наборы данных и делает с ними несколько вещей, передавая данные в DynamoDB (это по сути этап настройки проекта). В одном тестовом примере он делает около 1800 элементов между двумя таблицами и переносит их вместе с двумя или тремя отдельными элементами в другие таблицы. Тем не менее, я получаю ответ тайм-аут шлюза, когда я делаю это. Если я уменьшу размер, чтобы он составлял всего 800-1000 элементов, это будет хорошо, но намного больше, и я получу тайм-аут шлюза.

Теперь странная часть заключается в том, что я увеличил время для функции Lambda до90 секунд, но это дает мне 504 назад раньше, чем это. Если я смотрю в журналах CloudWatch, он говорит, что время истекло примерно через 90 секунд (90 000 мс), но я запустил секундомер, когда начал загрузку, и остановил его, когда получил 504, а это было около 32 секунд ...

Вот конфигурация Lambda:

enter image description here

И журналы от Lambda:

enter image description here

И Chrome использует синхронизацию с клиентом, который сделал запрос (тот же запрос, что и журналы):

enter image description here

Как ещеЯ справлюсь с этим? Есть ли способ сказать, что время ожидания действительно велико для этой конечной точки, но не для других? Наиболее важно, почему он возвращается до истечения указанного времени ожидания, но отчет был занят полностью? Что я тут не понимаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...