Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RoundRobinBalancer ¶
type RoundRobinBalancer struct {
// contains filtered or unexported fields
}
RoundRobinBalancer implements a round-robin load balancing algorithm.
func NewBalancer ¶
func NewBalancer(proxies []proxy.Proxy) *RoundRobinBalancer
NewBalancer creates a new RoundRobinBalancer instance.
func (*RoundRobinBalancer) Proxies ¶
func (b *RoundRobinBalancer) Proxies() []proxy.Proxy
Proxies returns the list of proxies managed by the balancer.
func (*RoundRobinBalancer) Select ¶
func (b *RoundRobinBalancer) Select(ctx context.Context, hzCtx *app.RequestContext) (proxy.Proxy, error)
Select picks the next available proxy in a round-robin fashion. It handles atomic counter increments and wraps around automatically.
Click to show internal directories.
Click to hide internal directories.