Dev Scott Asked: 2024-05-29 18:39:58 +0800 CST2024-05-29 18:39:58 +0800 CST 2024-05-29 18:39:58 +0800 CST 如何使用仅在高峰时段激活的无服务器为 aws lambda 实现预置并发? 772 我想在 aws lambda 中实现预置并发功能,但该功能仅在高峰时段激活。 我不想 24x7 运行我的实例,这样我就可以削减我的账单 我已将无服务器配置为提供 150 个预配置并发,但它们将始终运行。 serverless.yml functions: api: handler: index.handler provisionedConcurrency: 150 1 个回答 Voted Best Answer Yuvaraj M 2024-05-29T19:05:37+08:002024-05-29T19:05:37+08:00 您可以使用serverless-provisioned-concurrency-autoscaling插件来安排 aws lambda 配置并发 基本上这个插件将创建两个scheduled actions来启动和停止执行环境的帮助application autoscaling 打开终端并运行以下命令来安装插件 npm i serverless-provisioned-concurrency-autoscaling 然后配置插件serverless.yml plugins: - serverless-provisioned-concurrency-autoscaling 这是最后重要的一步,在函数级别配置lambda执行环境的开始和结束时间 functions: api: handler: index.handler provisionedConcurrency: 150 memorySize: 512 #For auto scaling in peek hours concurrencyAutoscaling: enabled: true alias: provisioned maximum: 150 minimum: 0 usage: 0.75 scaleInCooldown: 0 scaleOutCooldown: 0 customMetric: statistic: maximum scheduledActions: - name: PeekHourStarts timezone: "Your Timezone" #default to UTC schedule: "cron(00 9 * * ? *)" action: minimum: 150 - name: PeekHourEnds timezone: "Your Timezone" #default to UTC schedule: "cron(00 12 * * ? *)" action: maximum: 0 minimum: 0 奖金 插件文档 AWS 支持的时区 AWS cron 表达式参考
您可以使用
serverless-provisioned-concurrency-autoscaling
插件来安排 aws lambda 配置并发基本上这个插件将创建两个
scheduled actions
来启动和停止执行环境的帮助application autoscaling
打开终端并运行以下命令来安装插件
然后配置插件
serverless.yml
这是最后重要的一步,在函数级别配置lambda执行环境的开始和结束时间
奖金