A round-robin load balancer for HTTP proxies.
Go to file
Cyberes 28c7b60271 add helpful headers 2024-03-20 19:06:06 -06:00
canihazip adjust logging and test headers 2024-02-14 15:28:23 -07:00
proxy-skeleton add helpful headers 2024-03-20 19:06:06 -06:00
.gitignore add code 2024-01-14 14:35:42 -07:00
LICENSE Initial commit 2024-01-14 14:17:56 -07:00
README.md add helpful headers 2024-03-20 19:06:06 -06:00
loadbalancer.service fix systemd services 2024-01-14 20:08:51 -07:00
requirements.txt adjust logging and test headers 2024-02-14 15:28:23 -07:00

README.md

proxy-loadbalancer

A round-robin load balancer for HTTP proxies.

This is a simple load balancer using proxy.py that will route requests to a cluster of proxy backends in a round-robin fashion. This makes it easy to connect your clients to a large number of proxy servers without worrying about implementing anything special clientside.

Install

  1. pip install -r requirements.txt
  2. Copy proxy-skeleton/app/config.py.example to proxy-skeleton/app/config.py and fill in your config details.
  3. Deploy the ./canihazip directory and start the server.

Use

To start the load balancer server, navigate to ./proxy-skeleton and run python3 -m app. The systemd service loadbalancer.service is provided as a service example.

Special Headers

The load balancer accepts special headers to control its behavior.

  • Smartproxy-Bypass: don't use any SmartProxy endpoints.
  • Smartproxy-Disable-BV3HI: don't filter SmartProxy endpoints by the 503 connect error.