Envoy rate limit service

Rate limiterenvoy-ratelimit

Envoy's global rate limit service backed by Redis.

Provider
default
Category
Edge
Properties · 4 set by this component
propertytypevaluesrequiredkind defaultthis component
algorithmenumtoken-bucket | leaky-bucket | sliding-window | fixed-window | adaptivenotoken-bucket▸ fixed-window
atomicOps · advancedboolean—notrueinherited
backend · component propertyenumredis | memcachednoredisinherited
distributedboolean—nofalse▸ true
failModeenumopen | closednoopen▸ open
managedboolean—nofalseinherited
placementenumedge | gateway | sidecar | in-processnogateway▸ gateway
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: "envoy-ratelimit", component: "envoy-ratelimit" }
Other Rate limiter products · 6
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Envoy global rate limit service: fixed-window counters in Redis, called from the gateway; failure mode allows traffic.
schemaVersion: "1"
type: "component"
id: "envoy-ratelimit"
kind: "rate-limiter"
provider: "default"
docs: "https://github.com/envoyproxy/ratelimit"
defaults:
  algorithm: "fixed-window"
  placement: "gateway"
  distributed: true
  failMode: "open"
properties:
  backend:
    type: "enum"
    values: ["redis", "memcached"]
    default: "redis"

The same page as markdown, for an agent: /catalogue/components/envoy-ratelimit.md