Лямбда-выполнение AWS не выполняется только при первом запуске с «ошибкой функции клиента» - PullRequest
0 голосов
/ 10 декабря 2018

Я запускаю лямбда-функцию через API-шлюз, и все прекрасно работает, за исключением одного случая, когда при первом запуске в определенный день происходит сбой.

Как ни странно, журналы лямбда-функции не отображаютсялюбые ошибки.Я получаю свой обычный оператор START log и затем запрос и контекст триггера, затем через 5 с он неожиданно завершается.

Когда я просматриваю журналы шлюза API, возвращается ошибка:

Сбой выполнения лямбды со статусом 200 из-за ошибки функции клиента: 2018-12-10T11: 00: 31.208Z cc233168-fc9n-11fc-a05a-577bb4sd2b2ccc Тайм-аут задачи через 5,01 секунды.

Кто-нибудь сталкивался с подобной проблемой?Что такое ошибка функции клиента и как ее устранить?

1 Ответ

0 голосов
/ 10 декабря 2018

, не зная большей части фонового кода, который вы используете, я бы назвал это холодным стартом.Холодный запуск происходит для первого запроса, когда ваша функция не вызывается в течение очень долгого времени.Если вы заметили сообщение об ошибке «Время ожидания через 5,01 секунды. Это значение установлено по умолчанию. Вы можете увеличить время ожидания.

В качестве альтернативы, вы можете рассмотреть возможность уменьшения воздействия холодных запусков путем сокращения продолжительности холодных запусков ссылка :

  1. путем создания функций Lambda на языке, который не требует большого времени холодного запуска - например, Node.js, Python или Go
  2. выберите более высокий параметр памяти для функций на критическом пути обработки пользовательских запросов (т. е. всего, от чего пользователю придется ждать ответа, включая промежуточные API)
  3. оптимизация зависимостей вашей функции и размер пакета

Вы также можете исследовать это, передавая задание cron через Cloud Watch после каждого определенного интервала для вызова вашего API через PING

...