Skip to main content

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.

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.

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

1

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.
2

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.
3

Run with built-in operational features

Get daemonization, graceful upgrade, Prometheus metrics, and structured error logging with zero additional code.

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.

Build docs developers (and LLMs) love