TsgcWebSocketLoadBalancerServer › プロパティ › ThreadPool
接続が閉じられたときにワーカースレッドを破棄する代わりに再利用するスレッドプールを有効にします。
property ThreadPool: Boolean read GetThreadPool write SetThreadPool;
False
ThreadPool が True の場合、ダウンストリームクライアントへの処理を完了したスレッドは破棄される代わりにプールに戻され、非アクティブとしてマークされて再利用されるまで CPU サイクルを消費しません。これにより、ロードバランサー上での短命な HTTP ファンアウトのコストが大幅に削減されます。ThreadPoolOptions (MaxThreads、PoolSize) を調整して作成できるスレッド数を制御してください。スレッドプールは IOCP と互換性がありません。ThreadPool と IOCP ベースの I/O ハンドラーを同時に有効にしないでください。
oServer := TsgcWebSocketLoadBalancerServer.Create(nil);
oServer.ThreadPool := true;
oServer.ThreadPoolOptions.PoolSize := 64;
oServer.Active := true;