TsgcWebSocketLoadBalancerServer › Properties › ThreadPoolOptions
配置在 ThreadPool 启用时所使用的可复用线程池的大小和上限。
property ThreadPoolOptions: TsgcWSThreadPool_Options read FThreadPoolOptions write SetThreadPoolOptions;
MaxThreads=0(无限制),PoolSize=32
MaxThreads 限制负载均衡器可创建的工作线程总数;达到上限后,新进入的连接将被拒绝。设为 0 表示不限制。PoolSize 是线程池中保持预热的线程数(默认 32);较高的值可降低突发负载下的线程创建开销,但会增加空闲内存占用。由于负载均衡器需要复用大量短连接 HTTP 请求,较大的线程池通常对突发流量有益。这些属性仅在 ThreadPool 为 True 时生效;选择 IOCP 或 EPOLL 时将被忽略。
oServer := TsgcWebSocketLoadBalancerServer.Create(nil);
oServer.ThreadPool := true;
oServer.ThreadPoolOptions.MaxThreads := 1000;
oServer.ThreadPoolOptions.PoolSize := 64;
oServer.Active := true;