TsgcWebSocketLoadBalancerServer 구성 요소.
TsgcWebSocketLoadBalancerServer 구성 요소를 사용하면 WebSocket 및 HTTP 프로토콜의 로드 밸런싱을 할 수 있습니다. WebSocket 프로토콜의 경우, 서버 그룹에 메시지를 분산하고 무작위 시퀀스 또는 최소 연결 알고리즘을 사용하여 클라이언트 연결을 분산합니다.
Load Balancer Server는 TsgcWebSocketHTTPServer의 모든 메서드와 속성을 상속합니다.
Load Balancer Configuration
Load Balancer 서버는 TsgcWebSocketHTTPServer의 자손이므로, 구성 방법을 알려면 TsgcWebSocketHTTPServer에 대한 문서를 읽으십시오.
또한 Load Balancer에는 LoadBalancer 속성이 있으며, 이 속성에는 다음과 같은 속성이 있습니다:
- LoadBalancing: 연결을 분배하는 방법을 여기에서 구성합니다
- lbRandom: (기본값) 새 클라이언트가 연결을 요청할 때마다 무작위 서버를 반환합니다.
- lbConnections: 새 클라이언트가 연결을 요청할 때마다 연결된 클라이언트가 가장 적은 서버를 반환합니다.
- Protocols: 어떤 프로토콜이 활성화되는지 구성합니다
- WebSocket: true인 경우 websocket 연결이 Load Balancer Server에 의해 처리됩니다.
- HTTP: true인 경우 http 연결이 Load Balancer Server에 의해 처리됩니다.
Backup Server Configuration
Backup Server(로드 밸런서 뒤의 서버)는 TsgcWebSocketServer, TsgcWebSocketHTTPServer 또는 Datasnap Server일 수 있습니다.
이러한 서버에는 LoadBalancer 라는 속성이 있어 LoadBalancer Server와 Backup Servers 간의 연결을 구성할 수 있습니다.
- Enabled: 백업 서버로 사용하려면 true로 설정하십시오.
- Host: LoadBalancer가 위치한 호스트입니다.
- Port: LoadBalancer의 수신 대기 port.
- Guid: 이 서버를 식별하는 고유 id입니다.
- Bindings: 연결이 전달될 공개 주소입니다. 예: 백업 WebSocket 서버가 포트 8000에서 수신 대기하고 IP 주소가 1.1.1.1인 경우 다음을 사용하십시오: ws://1.1.1.1:8000;
- AutoRegisterBindings: 활성화하면 LoadBalancer Server가 백업 서버의 Bindings 속성을 사용하여 public 바인딩을 구성합니다.
- AutoRestart: 초 단위로, 0보다 크면 백업 서버의 load balancer 클라이언트가 x초마다 연결이 활성 상태인지 확인하는 내부 watchdog를 활성화하며, 닫혀 있으면 다시 연결을 시도합니다.