Expand description
§pingora-proxy
Programmable HTTP proxy built on top of pingora_core.
§Features
- HTTP/1.x and HTTP/2 for both downstream and upstream
- Connection pooling
- TLSv1.3, mutual TLS, customizable CA
- Request/Response scanning, modification or rejection
- Dynamic upstream selection
- Configurable retry and failover
- Fully programmable and customizable at any stage of a HTTP request
§How to use
Users of this crate defines their proxy by implementing ProxyHttp trait, which contains the callbacks to be invoked at each stage of a HTTP request.
Then the service can be passed into http_proxy_service()
for a pingora_core::server::Server to
run it.
See examples/load_balancer.rs
for a detailed example.
Modules§
Structs§
- The concrete type that holds the user defined HTTP proxy.
- The established HTTP session
Enums§
Traits§
- The interface to control the HTTP proxy