:cloud: 适用于云时代的现代化、简洁的负载均衡器
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 [email protected]: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
暂无开放 Issues,或尚未同步最近议题。