和
我的结论是:
MaxConcurrentSessions 是每个客户端的排队会话数(默认值为10) MaxConcurrentCalls 是服务上的活动连接数(默认值为16),即任何一次访问该服务的所有客户端,这意味着如果2个客户端每次执行10次调用,则4将需要等待队列进行处理。
问题:
(注意:我使用的是.NET 3.5)
答案 0 :(得分:8)
MaxConcurrentCalls 与当前正在执行的服务上的调用次数有关。
无论服务是否正在为连接执行任何操作,MaxConnections 都与服务上的打开连接总数有关。
例如,如果客户端打开与服务的连接,调用方法,并等待方法返回,它将计入 MaxConcurrentCalls 。一旦服务返回对客户端方法调用的响应,即使您没有关闭客户端代理,它也不会计入 MaxConcurrentCalls ....假设您没有关闭客户端代理,连接将计入服务上的 MaxConnections ,因为您仍然打开了连接,但它当前没有在服务上执行任何操作,因此它不会计算 MaxConcurrentCalls 。