open-vault/vendor/github.com/hailocab/go-hostpool
Jeff Mitchell 11160ae271 Update vendoring 2016-06-01 10:24:48 -04:00
..
LICENSE Migrate to built-in Go vendoring. 2016-02-18 15:06:02 -05:00
README.md Migrate to built-in Go vendoring. 2016-02-18 15:06:02 -05:00
epsilon_greedy.go Migrate to built-in Go vendoring. 2016-02-18 15:06:02 -05:00
epsilon_value_calculators.go Migrate to built-in Go vendoring. 2016-02-18 15:06:02 -05:00
host_entry.go Migrate to built-in Go vendoring. 2016-02-18 15:06:02 -05:00
hostpool.go Migrate to built-in Go vendoring. 2016-02-18 15:06:02 -05:00

README.md

go-hostpool

A Go package to intelligently and flexibly pool among multiple hosts from your Go application. Host selection can operate in round robin or epsilon greedy mode, and unresponsive hosts are avoided. Usage example:

hp := hostpool.NewEpsilonGreedy([]string{"a", "b"}, 0, &hostpool.LinearEpsilonValueCalculator{})
hostResponse := hp.Get()
hostname := hostResponse.Host()
err := _ // (make a request with hostname)
hostResponse.Mark(err)

View more detailed documentation on godoc.org