TsgcWebSocketProxyServer › Propriedades › ThreadPoolOptions
Configura o tamanho e o limite superior do pool de threads reutilizável usado quando ThreadPool está habilitado.
property ThreadPoolOptions: TsgcWSThreadPool_Options read FThreadPoolOptions write SetThreadPoolOptions;
MaxThreads=0 (ilimitado), PoolSize=32
MaxThreads limita o número total de threads de trabalho downstream que o proxy pode criar; quando o limite é atingido, conexões de entrada adicionais são recusadas. Deixe em 0 para não ter limite superior. PoolSize é o número de threads mantidas aquecidas no pool (padrão 32); valores mais altos reduzem o overhead de criação para cargas de trabalho com rajadas ao custo de memória ociosa. As propriedades só entram em vigor quando ThreadPool é True. Dimensione o pool generosamente em cenários de proxy, porque cada cliente downstream aceito também abre um link de saída ao servidor definido em Proxy.
oProxy := TsgcWebSocketProxyServer.Create(nil);
oProxy.ThreadPool := true;
oProxy.ThreadPoolOptions.MaxThreads := 500;
oProxy.ThreadPoolOptions.PoolSize := 64;
oProxy.Proxy.Host := 'upstream.example.com';
oProxy.Proxy.Port := 8080;
oProxy.Active := true;