Rate Limit
Upstash Integration
Alpha
DSAR is currently in alpha. APIs, package surfaces, configuration, and documentation may change as the project evolves.
@dsar/upstash provides Upstash-backed DSAR runtime integrations. It currently
exports an Upstash Redis-backed RateLimitStore for public intake endpoints.
Use it for serverless or edge-friendly deployments where a fetch-based Redis
client is preferred.
Install
@upstash/redis is a peer dependency so host applications control the client
version and environment variable setup.
Runtime Wiring
Behavior
- Uses the backend fixed-window rate-limit contract.
- Shares IP and tenant counters across runtime instances.
- Returns the same
429andRetry-Afterbehavior as the default store. - Automatically expires Upstash Redis keys after the configured window.
- Applies
keyPrefixbefore DSAR's route/scope key. Use an empty string only when the host application already namespaces keys.
Production Notes
- Use this package for serverless and fetch-oriented deployments.
- Use
@dsar/redisfor long-running Node/server deployments withioredis. - Keep
config.rateLimit.onLimitExceededwired to your metrics pipeline when you need visibility into abusive or misconfigured public intake sources.