我有一个使用两种方式 WCF-BasicHttp 发送端口调用 WCF 服务的编排。出于测试目的,我的 WCF 服务只接受一个参数,并返回一个值,因此我知道它没有任何耗时的逻辑。事实上,使用 WCFTestClient 客户端工具,我知道 WCF 服务调用只需几毫秒。
当我在编排中调用 WCF 服务时,发送形状大约需要 7 秒左右,而接收形状大约相同。因此,例如,在我的编排中花费的时间可能是 15 秒,而 wcf 服务的发送和接收形状占据了其中的 90 多秒。
我唯一能想到的是我主机上的轮询设置不正常。我有 3 台主机,1 台用于发送端口,1 台用于接收端口,1 台用于编排。每个都配置有默认配置。
此外,我对发送端口的打开、发送和关闭超时设置分别为 5,4 和 3 秒。这两个操作都没有超时,我相信问题不在于 wcf 服务本身,而在于 BizTalk 或我的 BizTalk 解决方案。
在下图中,请注意 sndGetDemographics 和 recGetDemographicsResponse 每个都需要大约 7 秒才能完成: