Aws lambda 无服务器预热插件并发执行预热功能
无服务器插件warmup4.2.0-rc.1在无服务器版本1.36.2下运行良好 但它只执行一次预热调用,而不是配置的五次 我的serverless.yml配置有问题吗 同样奇怪的是,我不得不在函数部分添加“warmup:true”来预热函数。根据文件上的配置在自定义部分应该是足够的Aws lambda 无服务器预热插件并发执行预热功能,aws-lambda,serverless-framework,serverless,aws-serverless,Aws Lambda,Serverless Framework,Serverless,Aws Serverless,无服务器插件warmup4.2.0-rc.1在无服务器版本1.36.2下运行良好 但它只执行一次预热调用,而不是配置的五次 我的serverless.yml配置有问题吗 同样奇怪的是,我不得不在函数部分添加“warmup:true”来预热函数。根据文件上的配置在自定义部分应该是足够的 plugins: - serverless-prune-plugin - serverless-plugin-warmup custom: warmup: enabled: true c
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分钟只看到一次执行。我希望每2分钟看到5次处决,或者我误解了什么
编辑:
现在使用主分支并发是可行的,但是现在传递给应该预热的函数的上下文被破坏了:使用SpringCloud函数=>“将客户端上下文解析为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
在warmup config中添加属性sourceRaw:true,该属性在函数JS中生成一个干净的源
const functions = [{"name":"myFunctionName","config":{"enabled":true,"source":"{\"type\":\"keepLambdaWarm\"}","concurrency":3}}];
配置:
custom:
warmup:
enabled: true
concurrency: 3
prewarm: true
schedule: rate(5 minutes)
source: { "type": "keepLambdaWarm" }
sourceRaw: true
timeout: 60
呵呵,看起来他们并没有发布一个版本来获得并行预热,您需要将您的package.json指向repo中的主分支!文档似乎自动更新了,但npm版本还没有发布。是的,通过检查,他们实际上正在安装一个主要贡献者作为维护者,因为原来的CHAP太忙了,它正在阻止您所寻找的功能的发布,现在只需将您的package.json指向repo,如果您需要帮助,请告诉我。谢谢,并发现在非常有用!“无服务器插件预热”:{“版本”:“git+”,“需要”:{“蓝鸟”:“3.5.3”,“fs额外”:“7.0.1”}