Repository navigation
v1.0.0
First release of http-proxy-lb, an HTTP relay proxy that listens on a local port and forwards client traffic through a pool of upstream proxies, keeping clients connected when individual upstreams fail.
Added
- Forward plain HTTP/1.x requests and tunnel HTTPS through
CONNECT, with client keep-alive and per-upstream proxy Basic auth. (#1) - Choose how traffic is spread across upstreams with
mode:round_robin(weighted round-robin),best(lowest latency plus active-connection score) orpriority(lowestpriorityvalue first, falling back to the next online level). (#1) - Mark an upstream offline as soon as a connection to it fails, and retry the request on another upstream, up to
min(pool_size, 3)attempts before answering 502. (#1) - Bring offline upstreams back only after an active probe through them to
generate_204returns HTTP 204, configured underhealth_check. (#1) - Send selected domains directly or through the pool with
domain_policy(off,blacklistorwhitelist), matchingdomain:,suffix:,*./.shorthand or plain domain expressions. (#1) - Reload the config file without a restart: upstreams are added and removed, and existing ones keep their state while picking up new
priority,weightand auth values. (#1) - Monitor the proxy through an optional admin listener with Prometheus
/metrics, a JSON/statusand a/healthcheck. (#1) - Limit concurrent connections and request time, enable per-request access logs, validate a config with
--check, and shut down gracefully on SIGTERM/SIGINT. (#1) - Run it with the provided Dockerfile, Docker Compose file or systemd unit. (#1)
Artifacts
- Docker:
ghcr.io/seiunx-dev/http-proxy-lb:v1.0.0 - Binaries for Linux x86_64, macOS arm64 and Windows x86_64: attached below.
Maintenance
Full Changelog: https://github.com/seiunx-dev/http-proxy-lb/commits/v1.0.0