:cloud: Modern & minimalistic load balancer for the Сloud era
1,986
stars
273
commits
Go
primary language
Aug 16, 2025
updated
gobetween - modern & minimalistic load balancer and reverse-proxy for the :cloud: Cloud era.
Current status: Maintenance mode, accepting PRs. Currently in use in several highly loaded production environments.
Clear & Flexible Configuration with TOML or JSON
Balancing Strategies (with SNI and MaxConnections support)
Integrates seamlessly with Docker and with any custom system (thanks to Exec discovery and healthchecks)
Single binary distribution
gobetween --help for full help on all available commands and options.$ git clone git@github.com:yyyar/gobetween.git$ make$ make runRun several web servers for tests in different terminals:
$ python -m SimpleHTTPServer 8000$ python -m SimpleHTTPServer 8001Instead of Python's internal HTTP module, you can also use a single binary (Go based) webserver like: https://github.com/udhos/gowebhello
gowebhello has support for SSL sertificates as well (HTTPS mode), in case you want to do quick demos of the TLS+SNI capabilities of gobetween.
Put localhost:8000 and localhost:8001 to static_list of static discovery in config file, then try it:
$ gobetween -c gobetween.toml
$ curl http://localhost:3000
Enable profiler and debug issues you encounter
[profiler]
enabled = true # false | true
bind = ":6060" # "host:port"
It's Fast! See Performance Testing
It's a play on words: gobetween ("go between").
Also, it's written in Go, and it's a proxy so it's something that stays between 2 parties :smile:
MIT. See LICENSE file for more details.
Logo by Max Demchenko
Go
96.5%
Makefile
1.7%
Shell
1.3%
:cloud: Modern & minimalistic load balancer for the Сloud era
1,986
stars
273
commits
Go
primary language
Aug 16, 2025
updated
gobetween - modern & minimalistic load balancer and reverse-proxy for the :cloud: Cloud era.
Current status: Maintenance mode, accepting PRs. Currently in use in several highly loaded production environments.
Clear & Flexible Configuration with TOML or JSON
Balancing Strategies (with SNI and MaxConnections support)
Integrates seamlessly with Docker and with any custom system (thanks to Exec discovery and healthchecks)
Single binary distribution
gobetween --help for full help on all available commands and options.$ git clone git@github.com:yyyar/gobetween.git$ make$ make runRun several web servers for tests in different terminals:
$ python -m SimpleHTTPServer 8000$ python -m SimpleHTTPServer 8001Instead of Python's internal HTTP module, you can also use a single binary (Go based) webserver like: https://github.com/udhos/gowebhello
gowebhello has support for SSL sertificates as well (HTTPS mode), in case you want to do quick demos of the TLS+SNI capabilities of gobetween.
Put localhost:8000 and localhost:8001 to static_list of static discovery in config file, then try it:
$ gobetween -c gobetween.toml
$ curl http://localhost:3000
Enable profiler and debug issues you encounter
[profiler]
enabled = true # false | true
bind = ":6060" # "host:port"
It's Fast! See Performance Testing
It's a play on words: gobetween ("go between").
Also, it's written in Go, and it's a proxy so it's something that stays between 2 parties :smile:
MIT. See LICENSE file for more details.
Logo by Max Demchenko
Go
96.5%
Makefile
1.7%
Shell
1.3%