调用另一个WCF服务的WCF服务很慢

时间:2011-10-24 11:10:47

标签: c# .net wcf

我有一个设计,我们有一个WCF服务访问一个表示为另一个WCF服务的数据存储。这背后的想法是坚持SOA并有可能通过实际服务和数据访问层实现负载平衡,并使数据存储能够大规模地改变而不会影响初始服务。

问题是这些是在IIS6上运行的,必须启用加密。

启用这两项服务后,我们的平均值约为

平均每秒请求数:4.75469280423686超过400次调用。

但是如果我删除对第二个服务的服务调用并用绝对引用替换它几乎加倍

平均每秒请求数:8.52248037501811超过400次呼叫。

有没有人知道如何/我可以做些什么来优化这个?

我应该添加这些不是并发调用。

2 个答案:

答案 0 :(得分:3)

我强烈建议您阅读此CodeProject文章:http://www.codeproject.com/KB/webservices/quickwins.aspx,由BT的首席架构师撰写。

答案 1 :(得分:0)

两个Web服务是否在同一台计算机和同一个应用程序池上运行?我之前有过这个问题;我们最终完全削减了这个架构,但我相信它可以通过将它们放在不同的应用程序池中来帮助它。

此外,既然你提到过IIS6,.Net可能会拒绝你:查看http://msdn.microsoft.com/en-us/library/ff647787.aspx(第6章:提高ASP.NET性能) - 尤其是“线程解释”部分。 (IIS6默认情况下没有适合您的处理器的.Net线程数 - IIS7 +。)

祝你好运!