TsgcWebSocketLoadBalancerServer속성 › LoadBalancer

LoadBalancer 속성

로드 밸런서가 등록된 백엔드에 다운스트림 연결을 분배하는 방법과 어떤 프로토콜이 밸런싱되는지를 구성합니다.

구문

property LoadBalancer: TsgcWSLoadBalancer_Options read FLoadBalancer write SetLoadBalancer;

기본값

LoadBalancing=lbRandom, Protocols.WebSocket=True, Protocols.HTTP=True

설명

TsgcWebSocketLoadBalancerServer에서 LoadBalancer 속성은 로드 밸런서 자체의 런타임 동작을 제어합니다 — 다른 로드 밸런서에 등록하는 클라이언트를 구성하지 않습니다(그 역할은 TsgcWebSocketServer의 동일한 이름의 속성에 속합니다). 백엔드 TsgcWebSocketServer 인스턴스는 자체 LoadBalancer.Enabled를 활성화하고 LoadBalancer.Host/LoadBalancer.Port를 이 구성 요소로 가리킴으로써 등록합니다. 등록 데이터는 ServerList에 내부적으로 추적됩니다.

하위 속성:

새 다운스트림 클라이언트에 반환되는 바인딩은 선택된 백엔드가 자체 LoadBalancer.Bindings를 통해 광고한 것입니다. OnBeforeSendServerBinding 이벤트를 사용하면 전송되기 직전에 선택을 재정의할 수 있습니다.

예제


oServer := TsgcWebSocketLoadBalancerServer.Create(nil);
oServer.Port := 80;
oServer.LoadBalancer.LoadBalancing := lbConnections;
oServer.LoadBalancer.Protocols.WebSocket := true;
oServer.LoadBalancer.Protocols.HTTP := true;
oServer.Active := true;

속성으로 돌아가기