Gydro is still under development and should not be used in production.
- No external databases needed
- Administration via RESTFul api
- Consumer auth by api key
- Round-robin load balancing per route between multiple backends
- Circuit breaker
- Persistent rate limiter
- Group based authorization
- Add JWT auth
- Add support for an external database to allow multi host deployments
- Allow some configuration in order to override hardcoded default parameters...
- Add some tests...
Under the hood
- Tiedot as datastore
- BuntDB for rate limiter middleware backend
- Gorilla Mux for api routing
- Oxy for forwarding and load balancing requests
- Echo for admin api
Install Go >= 1.7, set your $GOPATH, and run :
go get github.com/xaviergodart/gydro
To start Gydro: