DEPRECATED — This library is no longer maintained and will not receive any further updates. There will be no v0.2.0 release. Users should migrate to AWS SDK for Go v2 and rely on its built-in retry and rate-limiting capabilities instead (see Migration Guide below).
This package provided a response-caching layer for AWS SDK for Go v1, which reached end-of-support on July 31, 2025. It was forked from ticketmaster/aws-sdk-go-cache.
This library was originally built to mitigate AWS API rate limiting (throttling) by caching read-only API responses. AWS SDK for Go v2 significantly reduces the need for client-side response caching:
Standard Retry Mode (enabled by default):
- Token-bucket rate limiter (500 tokens) that automatically throttles requests when errors are detected
- Exponential backoff with jitter between retry attempts
- 3 retry attempts by default, configurable up to any number
- Safe for multi-tenant applications
Adaptive Retry Mode (opt-in):
- Dynamically adjusts client-side request rate based on throttle responses from AWS
- Automatically restricts attempt rate when throttling is detected
- Expands on standard mode with a second token bucket for request rate limiting
- Remove this library and migrate to AWS SDK for Go v2
- Use standard retry mode (the default) — no extra configuration needed
- For truly stable data (e.g.,
DescribeInstanceTypeswhich rarely changes), use a simplesync.Onceor package-level cache variable rather than a full caching library - If you need custom response caching, AWS SDK v2's middleware framework makes it straightforward to add a caching layer without a dedicated library