Pingora is the open-source Rust framework behind Cloudflare’s global proxy infrastructure. It provides everything you need to build production-grade HTTP proxies, load balancers, and custom network services — from a programmable per-phase filter system to graceful zero-downtime upgrades.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/cloudflare/pingora/llms.txt
Use this file to discover all available pages before exploring further.
Introduction
Learn what Pingora is, why it was built, and when to use it.
Quickstart
Build a working load balancer with health checks in under 10 minutes.
Proxy Phases & Filters
Understand the full request lifecycle and every hook you can override.
Crate Reference
Explore all workspace crates and their public APIs.
What you can build
Pingora gives you low-level control over the HTTP proxy lifecycle while handling the hard operational problems — connection pooling, TLS, graceful restarts — out of the box.HTTP Proxies
Full HTTP/1 and HTTP/2 end-to-end proxying with programmable filters at every stage.
Load Balancers
Round-robin, consistent hashing, and custom backend selection with health checks.
API Gateways
Rate limiting, authentication, header manipulation, and request routing.
Key features
Implement the ProxyHttp trait
Define
upstream_peer() to select a backend and override any of the lifecycle hooks — request_filter, upstream_request_filter, response_filter, and more.Create a Server and add your service
Wrap your proxy in an
http_proxy_service(), attach a TCP listener, and hand it to a Server instance.Explore the docs
Running Servers
Start/stop signals, configuration file reference, and systemd integration.
Building Proxies
Every phase in the request lifecycle with real code examples.
Observability
Prometheus metrics, error logging, rate limiting, and panic recovery.
Load Balancing
Backend selection algorithms, health checks, and service discovery.
