Sen descrición

Dan Frank d94a633b9e refactor to selector interface %!s(int64=12) %!d(string=hai) anos
.gitignore 9ee9de1a9a Initial commit %!s(int64=13) %!d(string=hai) anos
.travis.yml 04638c1bf2 Initial migration from Bitly codebase, plus travis yml %!s(int64=13) %!d(string=hai) anos
README.md caed515f02 docs and examples like a responsible author %!s(int64=12) %!d(string=hai) anos
epsilon_greedy.go d94a633b9e refactor to selector interface %!s(int64=12) %!d(string=hai) anos
epsilon_value_calculators.go f168a71549 fix some value calculators and add docs %!s(int64=12) %!d(string=hai) anos
example_test.go d94a633b9e refactor to selector interface %!s(int64=12) %!d(string=hai) anos
host_entry.go 6d43f34e8e split into multiple files %!s(int64=12) %!d(string=hai) anos
hostpool.go d94a633b9e refactor to selector interface %!s(int64=12) %!d(string=hai) anos
hostpool_test.go d94a633b9e refactor to selector interface %!s(int64=12) %!d(string=hai) anos
selector.go d94a633b9e refactor to selector interface %!s(int64=12) %!d(string=hai) anos

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