TsgcWebSocketLoadBalancerServer › Properties › ThreadPool
Active un pool de threads qui recycle les threads de travail au lieu de les détruire à la fermeture des connexions.
property ThreadPool: Boolean read GetThreadPool write SetThreadPool;
False
Lorsque ThreadPool est True, les threads ayant terminé de servir un client en aval sont renvoyés dans un pool plutôt que détruits ; ils sont marqués inactifs et ne consomment aucun cycle CPU jusqu'à leur réutilisation. Cela réduit considérablement le coût des requêtes HTTP éphémères sur l'équilibreur de charge. Ajustez ThreadPoolOptions (MaxThreads, PoolSize) pour contrôler le nombre de threads pouvant être créés. Le pool de threads n'est pas compatible avec IOCP : n'activez pas simultanément ThreadPool et un gestionnaire d'E/S basé sur IOCP.
oServer := TsgcWebSocketLoadBalancerServer.Create(nil);
oServer.ThreadPool := true;
oServer.ThreadPoolOptions.PoolSize := 64;
oServer.Active := true;