TsgcWebSocketLoadBalancerServer › Proprietà › ThreadPoolOptions
Configura la dimensione e il limite superiore del pool di thread riutilizzabile usato quando ThreadPool è abilitato.
property ThreadPoolOptions: TsgcWSThreadPool_Options read FThreadPoolOptions write SetThreadPoolOptions;
MaxThreads=0 (illimitato), PoolSize=32
MaxThreads limita il numero totale di thread di lavoro che il load balancer può creare; quando il limite viene raggiunto, le connessioni in arrivo aggiuntive vengono rifiutate. Lo lasci a 0 per nessun limite superiore. PoolSize è il numero di thread mantenuti caldi nel pool (predefinito 32); valori più alti riducono l'overhead di creazione per i carichi di lavoro a raffica al costo di memoria inattiva. Poiché il load balancer multiplexa molti fan-out HTTP di breve durata, un pool più grande è spesso vantaggioso in caso di traffico a raffica. Le proprietà hanno effetto solo quando ThreadPool è True; vengono ignorate quando sono selezionati IOCP o EPOLL.
oServer := TsgcWebSocketLoadBalancerServer.Create(nil);
oServer.ThreadPool := true;
oServer.ThreadPoolOptions.MaxThreads := 1000;
oServer.ThreadPoolOptions.PoolSize := 64;
oServer.Active := true;