【发布时间】:2010-05-20 19:02:53
【问题描述】:
我有一个指向 WebSphere 服务的 WCF 客户端(在 Win7 上运行)。
测试工具(我的 Web 应用程序外部的一个小测试装置)一切都很好,但是当我对服务的调用来自我的 Web 项目时,其中一个调用(并且只有那个调用)反序列化非常慢(它需要分钟 VS 秒)并且不仅仅是第一次。
我可以从 fiddler 看到响应很快返回,但随后 WCF 客户端在响应本身挂起超过一分钟,在调试器命中下一行代码之前,几乎如果客户端在反序列化时遇到问题。仅当在响应中我有一个给定的 pdf 字符串(该操作生成一个 pdf)、base64 编码的分块时,才会发生这种情况。例如,如果服务引发错误(因此 pdf 字符串不存在),则立即反序列化响应。
再次,如果我通过 Soap-UI 或从 Web 项目外部发送完全相同的信封,一切都很好。
我不知所措 - 我应该寻找什么,是否有一些配置设置可以解决问题?
任何帮助表示赞赏!
编辑:
我针对同一个服务合同编写了一个存根。使用完全相同的 basicHttpBinding 并返回完全相同的 pdf 字符串,没有延迟注册。我认为这排除了字符串和绑定作为可能的原因。还剩下什么?
【问题讨论】: