【发布时间】:2019-05-11 21:45:14
【问题描述】:
我正在设置 WCF NET TCP 服务器。到目前为止,我的连接很少。 但是自从我决定做一些压力测试后,我发现了一些问题。 客户端启动线程时,我得到 128 个成功连接,但在第 129 个连接处,我得到:
服务器太忙异常。
我已经在绑定时将 maxConnections 更改为 1000。我已经在 serviceThrottling 将 maxConcurrentCalls、maxConcurrentSessions、maxConcurrentInstances 更改为 5000(仅用于测试)。
我的绑定:
<binding name="netTcpClientsBindingConfig" transferMode="Buffered" maxReceivedMessageSize="50242880"
closeTimeout="00:05:00" openTimeout="00:05:00" receiveTimeout="00:05:00"
sendTimeout="00:05:00" maxConnections="1000">
我的行为配置:
<behavior name="mexClientsBehavior">
<serviceThrottling
maxConcurrentCalls = "5000"
maxConcurrentSessions = "5000"
maxConcurrentInstances = "5000"
/>
我预计至少接受 1000 个连接。
这里有一个限制(我相信是这样!如果有其他解决方案,请任何人纠正我):
我需要保持连接已打开,因为我的服务器可能会通过回调与客户端联系,以发送客户端应该尽快知道的信息。如果连接关闭,我无法在服务器端重新打开,或者我可以吗?这将是一个解决方案。
【问题讨论】: