Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BackendConfig ¶
type BackendConfig struct { Options // contains filtered or unexported fields }
BackendConfig HealthCheck configuration for a backend
func NewBackendConfig ¶
func NewBackendConfig(options Options, backendName string) *BackendConfig
NewBackendConfig Instantiate a new BackendConfig
type BalancerHandler ¶
type BalancerHandler interface { ServeHTTP(w http.ResponseWriter, req *http.Request) Servers() []*url.URL RemoveServer(u *url.URL) error UpsertServer(u *url.URL, options ...roundrobin.ServerOption) error }
BalancerHandler includes functionality for load-balancing management.
type HealthCheck ¶
type HealthCheck struct { Backends map[string]*BackendConfig // contains filtered or unexported fields }
HealthCheck struct
func GetHealthCheck ¶
func GetHealthCheck() *HealthCheck
GetHealthCheck returns the health check which is guaranteed to be a singleton.
func (*HealthCheck) SetBackendsConfiguration ¶
func (hc *HealthCheck) SetBackendsConfiguration(parentCtx context.Context, backends map[string]*BackendConfig)
SetBackendsConfiguration set backends configuration
type LbStatusUpdater ¶
type LbStatusUpdater struct { BalancerHandler // contains filtered or unexported fields }
LbStatusUpdater wraps a BalancerHandler and a ServiceInfo, so it can keep track of the status of a server in the ServiceInfo.
func NewLBStatusUpdater ¶
func NewLBStatusUpdater(bh BalancerHandler, svinfo *runtime.ServiceInfo) *LbStatusUpdater
NewLBStatusUpdater returns a new LbStatusUpdater
func (*LbStatusUpdater) RemoveServer ¶
func (lb *LbStatusUpdater) RemoveServer(u *url.URL) error
RemoveServer removes the given server from the BalancerHandler, and updates the status of the server to "DOWN".
func (*LbStatusUpdater) UpsertServer ¶
func (lb *LbStatusUpdater) UpsertServer(u *url.URL, options ...roundrobin.ServerOption) error
UpsertServer adds the given server to the BalancerHandler, and updates the status of the server to "UP".