使用共享静态WCF代理客户端的缺陷是什么?

时间:2009-02-19 00:58:53

标签: static client shared wcf-proxy

我正在考虑将共享(读取静态)WCF代理客户端用于高吞吐量应用程序。我相信这样做可以获得性能提升,但我还没有对此进行基准测试。

这个想法有一些严重的缺陷吗?

从我的研究中我可以看出存在处理故障状态的问题,目前还不清楚这种状态对其他待处理请求的影响是什么。

有没有人有从其故障状态恢复WCF代理的经验?

提前感谢!

2 个答案:

答案 0 :(得分:4)

一旦频道处于故障状态,它将保持这种状态。所以是的,我认为静态客户端会有问题。我开始也是这样,但最终为每个电话创建并打开了一个新频道。似乎没有太多的性能权衡。

作为参考,我在另一台四核机器的四核机器上做了大约30-60个每秒请求大约5K-30K的请求。到目前为止,WCF一直表现良好。

答案 1 :(得分:2)

我刚刚发现在代理上调用Close()会阻塞执行[OperationContract(IsOneWay = true)]的单向操作的调用。这也会改变流程。