TsgcWebSocketLoadBalancerServerWłaściwości › ThreadPoolOptions

ThreadPoolOptions Właściwość

Konfiguruje rozmiar i górny limit wielokrotnego użytku puli wątków używanej gdy włączona jest właściwość ThreadPool.

Składnia

property ThreadPoolOptions: TsgcWSThreadPool_Options read FThreadPoolOptions write SetThreadPoolOptions;

Wartość domyślna

MaxThreads=0 (bez limitu), PoolSize=32

Uwagi

Właściwość MaxThreads ogranicza łączną liczbę wątków roboczych, które może utworzyć load balancer; po osiągnięciu limitu dodatkowe połączenia przychodzące są odrzucane. Wartość 0 oznacza brak górnego ograniczenia. Właściwość PoolSize to liczba wątków utrzymywanych w puli w gotowości (domyślnie 32); wyższe wartości zmniejszają narzut tworzenia wątków przy skokowym ruchu kosztem pamięci bezczynności. Ponieważ load balancer multipleksuje wiele krótkotrwałych fanoutów HTTP, większa pula jest często korzystna przy skokowym ruchu. Właściwości te obowiązują tylko wtedy, gdy właściwość ThreadPool ma wartość True; są ignorowane przy wyborze IOCP lub EPOLL.

Przykład


oServer := TsgcWebSocketLoadBalancerServer.Create(nil);
oServer.ThreadPool := true;
oServer.ThreadPoolOptions.MaxThreads := 1000;
oServer.ThreadPoolOptions.PoolSize := 64;
oServer.Active := true;

Wróć do Właściwości