Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use DependsOn to prevent API rate limits #7

Merged
merged 3 commits into from
Jul 21, 2017
Merged

Use DependsOn to prevent API rate limits #7

merged 3 commits into from
Jul 21, 2017

Conversation

sbstjn
Copy link
Owner

@sbstjn sbstjn commented Jul 21, 2017

  • Use DependsOn to prevent failures due to API limitations (Should fix CloudFormation rate limit #3)
  • Breaking: Change configuration API and replace name with table
  • Breaking: Change configuration API to require CloudFormation resource instead of plain table name

Configuration

custom:
  capacities:
    - table: CustomTableA
      read:
        minimum: 1
        maximum: 123
        usage: 0.80
      write:
        minimum: 10
        maximum: 100
        usage: 0.50

CloudFormation

resources:
  Resources:
    CustomTableA:
      Type: AWS::DynamoDB::Table
      Properties:
        TableName: custom-table-A
        AttributeDefinitions:
          - AttributeName: key
            AttributeType: S
        KeySchema:
          - AttributeName: key
            KeyType: HASH
        ProvisionedThroughput:
          ReadCapacityUnits: 5
          WriteCapacityUnits: 5

@sbstjn sbstjn added the RC label Jul 21, 2017
@sbstjn sbstjn self-assigned this Jul 21, 2017
@sbstjn sbstjn merged commit dc5f75d into master Jul 21, 2017
@sbstjn sbstjn deleted the add-DependsOn branch July 21, 2017 11:24
@medikoo
Copy link

medikoo commented Oct 10, 2017

@sbstjn this comes as a solution for API rate limits issue. Still in documentation at "API Throtteling" section you still say:

If you plan to configure Auto Scaling for multiple DynamoDB tables or Global Secondary Indexes, request an increase of the rate limits first!

Does it mean that merged patch doesn't fix completely given issue (?) Or documentation message and this patch talk about different limits?

@sbstjn
Copy link
Owner Author

sbstjn commented Oct 10, 2017

The default limit for PutMetricAlarm is 3 transactions per second. Depending on your tables and autoscaling configuration you still may run into this limit.

After I asked the AWS support to increase the limit (which they did without any concern) I never ran into the mentioned error again.

@medikoo
Copy link

medikoo commented Oct 10, 2017

@sbstjn thanks for reply. Was PutMetricAlarm limit issue, source of a #3 bug report that this PR tries to address (at least partially), or was it something else and PutMetricAlarm is a different thing?

@medikoo medikoo mentioned this pull request Oct 10, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

CloudFormation rate limit
2 participants