У меня serverless-plugin-warmup 4.2.0-rc.1 отлично работает с бессерверной версией 1.36.2.
Но он выполняется только с одним вызовом разминки вместо настроенных пяти.
Есть ли проблема в моей конфигурации serverless.yml?
Также странно, что я должен добавить «разогрев: истина» в раздел функций, чтобы функция разогревалась. Согласно документам на https://github.com/FidelLimited/serverless-plugin-warmup конфига в пользовательском разделе должно быть достаточно.
plugins:
- serverless-prune-plugin
- serverless-plugin-warmup
custom:
warmup:
enabled: true
concurrency: 5
prewarm: true
schedule: rate(2 minutes)
source: { "type": "keepLambdaWarm" }
timeout: 60
functions:
myFunction:
name: ${self:service}-${opt:stage}-${opt:version}
handler: myHandler
environment:
FUNCTION_NAME: myFunction
warmup: true
в AWS Cloud Watch я вижу только одно выполнение каждые 2 минуты. Я ожидал увидеть 5 казней каждые 2 минуты, или я что-то неправильно понимаю?
РЕДАКТИРОВАТЬ: Теперь использование параллелизма основной ветки работает, но теперь контекст, который доставляется функции, которую следует подогреть, нарушен: Использование Spring Cloud Functions => «Ошибка синтаксического анализа клиентского контекста как JSON»
Глядя на JS сгенерированной функции разминки, доставленный исходный код выглядит некорректно =>
const functions = [{"name":"myFunction","config":{"enabled":true,"source":"\"\\\"{\\\\\\\"source\\\\\\\":\\\\\\\"serverless-plugin-warmup\\\\\\\"}\\\"\"","concurrency":3}}];
Конфиг:
custom:
warmup:
enabled: true
concurrency: 3
prewarm: true
schedule: rate(5 minutes)
timeout: 60