Windows系统无全局并发连接开关,需按服务类型分别配置:远程桌面须通过gpedit.msc启用“限制连接的数量”、禁用单会话绑定、清理断开会话并执行gpupdate /force;Nginx需调优worker_connections、系统端口范围及TCP参数;IIS和自定义服务则需各自调整连接限制与套接字参数。
windows 系统服务本身不直接提供“全局并发连接数”开关,其连接限制分散在不同服务组件中,需按服务类型分别配置。关键不是统一调大一个数值,而是识别具体服务(如远程桌面、iis、nginx、sql server等),再针对性调整对应策略、句柄资源和协议栈参数。
默认仅允许1个活跃会话(家庭版)或2个(Server版),突破需组合操作:
受系统句柄、事件模型与TCP栈制约,非简单改 worker_connections 即可提升:
netsh int ipv4 set dynamicport tcp start=1024 num=64511,扩大临时端口池nginx.conf 的 events 块):use poll;worker_connections 8192;(Windows 仅支持单 worker,总并发 ≈ 此值)multi_accept on;
keepalive_timeout 15;、client_header_timeout 10;、reset_timedout_connection on;
影响所有基于 TCP 的服务(含 IIS、SQL Server、自定义服务):
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters,新增或修改:MaxUserPort = 65534(十进制)TcpTimedWaitDelay = 30(秒,减少 TIME_WAIT 占用)面向 Web 应用的服务有独立粒度控制:
appcmd set config /section:system.webServer/serverRuntime /connectionTimeout:"00:01:30"
backlog 参数(如 HttpListener 的 Prefixes + Start() 前配置);Java 中可通过 server.tomcat.accept-count 和 max-connections 控制