плагин для прогрева без сервера одновременное выполнение функций прогрева - PullRequest
0 голосов
/ 22 января 2019

Я получил serverless-plugin-warmup 4.2.0-rc.1, работающий нормально с безсерверной версией 1.36.2

Но он выполняется только с одним разогревом вместо настроенных пяти.

Есть ли какие-либо проблемы в моей конфигурации serverless.yml?

Также странно, что я должен добавить 'warmup: true' в раздел функций, чтобы прогреть функцию.В соответствии с документами на 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

1 Ответ

0 голосов
/ 23 января 2019

Добавлено свойство sourceRaw: true для конфигурации разминки, которая генерирует чистый источник в функции JS.

const functions = [{"name":"myFunctionName","config":{"enabled":true,"source":"{\"type\":\"keepLambdaWarm\"}","concurrency":3}}];

Config:

custom:
  warmup:
    enabled: true
    concurrency: 3
    prewarm: true
    schedule: rate(5 minutes)
    source: { "type": "keepLambdaWarm" }
    sourceRaw: true
    timeout: 60
...