Redis rate limiter

Rate limiterredis-rate-limiter

Application rate limiter using Redis counters and Lua scripts.

Provider
default
Category
Edge
Properties · 2 set by this component
propertytypevaluesrequiredkind defaultthis component
algorithmenumtoken-bucket | leaky-bucket | sliding-window | fixed-window | adaptivenotoken-bucketinherited
atomicOps · advancedboolean—notrue▸ true
distributedboolean—nofalse▸ true
failModeenumopen | closednoopeninherited
luaScripted · component propertyboolean—notrueinherited
managedboolean—nofalseinherited
placementenumedge | gateway | sidecar | in-processnogatewayinherited
scopeenumglobal | user | ip | api-key | concurrencynouserinherited
Rules that apply · 0

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

No rule reads this kind yet. That is a gap, not a guarantee.
Use it in a design
nodes:
  - { id: "redis-rate-limiter", component: "redis-rate-limiter" }
Other Rate limiter products · 6
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Redis-backed rate limiter: distributed counters, atomic via Lua scripts. Algorithm varies by library.
schemaVersion: "1"
type: "component"
id: "redis-rate-limiter"
kind: "rate-limiter"
provider: "default"
docs: "https://redis.io/docs/latest/develop/use/patterns/"
defaults:
  distributed: true
  atomicOps: true
properties:
  luaScripted:
    type: "boolean"
    default: true

The same page as markdown, for an agent: /catalogue/components/redis-rate-limiter.md