如何使用无服务器框架为多个环境配置 DynamoDB ProvisionedThroughput

How to configure DynamoDB ProvisionedThroughput for multiple envs using Serverless Framework

我正在 AWS 上构建无服务器应用程序,并尝试创建具有某些 ProvisionedThroughput 值的 DynamoDB 表或使用无服务器框架启用自动缩放。

例如:

我知道如何通过 serverless.yml 配置 1 个环境的设置,但我如何使用相同的 serverless.yml 文件管理每个环境的不同值。是否可以以任何方式更改每个环境的值或 enable/disable 自动缩放?

您可以使用插件

https://github.com/sbstjn/serverless-dynamodb-autoscaling

因此,对于配置,您可以使用像

这样的无服务器变量
custom:
  capacities:
    - table: CustomTable  # DynamoDB Resource
      index:              # List or single index name
        - custom-index-name
      read:
        minimum: ${file(../config.${self:provider.stage}.json):MinReadThroughput}
        maximum: ${file(../config.${self:provider.stage}.json):MaxReadThroughput}
        usage: 0.75
      write:
        minimum: 40       # Minimum write capacity
        maximum: 200      # Maximum write capacity
        usage: 0.5        # Targeted usage percentage


provider:
  name: aws
  stage: ${opt:stage, 'dev'}