我已经被这样定义的WCF服务:设置WCF服务调用
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)]
结合使用NetTcpBinding的完成。
我们支持50多个不时致电服务器的客户端。 每个客户端在加载后使用channelfactory打开一个频道,并为所有呼叫使用该频道(仅创建频道和代理一次)。
我们建立了一个小型负载测试仪,通过一次调用50个不同的线程(使用50个不同的通道)来模拟客户端。 当我们运行这台测试仪时,第10个客户端尝试连接之后,所有其他客户端连接失败。 我们已经设置限制为100
我的问题是:
- 是正确的为每个客户建立一个通道,并使用它通过客户端的续航时间?或者,我是否需要为服务器的每次调用使用using语句(为每个调用创建和销毁一个新通道)。
- 服务是否有通道连接的限制?其他然后节流?
什么是CAL限制? 每个客户端每1分钟就会调用一次服务器(假定),您是否建议我在每次调用服务器时创建一个通道? – gash25 2010-05-23 13:12:15
使用语句和wcf客户端.....不好http://msdn.microsoft.com/en-us/library/aa355056.aspx – redsquare 2010-05-24 05:57:13
Doh!感谢那。 – Doobi 2010-05-24 12:28:37