pacer

Crates.iopacer
lib.rspacer
version0.1.0
created_at2025-07-11 17:27:10.590927+00
updated_at2025-07-11 17:27:10.590927+00
descriptionDistributed rate-limiter with HTTP interface
homepage
repositoryhttps://github.com/beebeeep/pacer
max_upload_size
id1748190
size72,519
Danila Migalin (beebeeep)

documentation

README

pacer

A simple distributed rate-limiter with HTTP API

Usage

Send empty POST request to /limit/{max_rps}/{bucket}, response code will be either 200 OK or 429 Too Many Requests. Buckets for each RPS limit are created on-demand.

High-availablity setup

You can configure arbitrary number of replicas, they will be synchronizing their buckets so that RPS limit for each bucket is calculated across the whole cluster. Then you can simply have any HTTP load balancer doing round-robin routing across all replicas.

If require_quorum configuration option is enabled, then node will start returning 429s for all requests if it failed to synchronize with quorum of its peers. This can be used to prevent overshooting the RPS limit in case of network partitioning between limiter nodes.

Commit count: 0

cargo fmt