Skip to content

Intelligently and flexibly pool among multiple hosts from your Go application

License

Notifications You must be signed in to change notification settings

bitly/go-hostpool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e622dd8 · Dec 16, 2020

History

28 Commits
Nov 14, 2012
Dec 24, 2019
Mar 31, 2015
Dec 24, 2019
Dec 16, 2020
Apr 17, 2013
Mar 4, 2017
Dec 24, 2019
Dec 24, 2019
Apr 17, 2013
Feb 18, 2019
Oct 23, 2017

Repository files navigation

go-hostpool

Build Status GoDoc GitHub release

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

About

Intelligently and flexibly pool among multiple hosts from your Go application

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages