WIF在F5负载均衡器后面保护WCF服务 - TCP错误代码10060

时间:2011-05-04 07:55:24

标签: wcf load-balancing wif f5

我一直在使用WS2007FederationHttpBinding开发WIF安全的WCF服务。所有这些在开发中都可以正常工作,但是当我转向系统测试时,服务在F5后面托管,使用F5地址调用服务失败

  

无法连接到http:///myservice/service.svc。   TCP错误代码10060:连接   尝试失败,因为连接   一方没有正确回应   一段时间,或已建立   连接失败,因为连接   主持人没有回复   

系统测试环境在池中配置了3个成员。如果我将客户端配置为直接在应用服务器地址连接到服务,则一切正常。如果我重新配置连接到F5地址,我会遇到上述问题。

我正在使用自定义服务主机从数据库中的配置信息配置服务。在服务上我将listenuri配置为http:// [appserverhostname] /myservice/service.svc,我将endpointaddress配置为http:// [f5 dns] /myservice/service.svc。我无法在服务端看到任何活动,虽然我现在无法启用日志记录(正在处理此问题)。

不同寻常的是,有时第一次请求会返回TCP错误,然后后续请求将成功。一段时间后,此序列将再次发生,表明它在某种程度上与超时有关。我已经尝试对池设置进行了一些修改,包括从池中删除特定成员,将池配置为拥有1个成员,并在池中唯一的成员上运行服务和客户端,并且无法获得一致的结果。

使用自发证书保护服务,客户端仅使用DNSIdentity(证书的CN)作为其身份。

此方案中的配置有什么问题导致在F5后面负载平衡时调用WCF服务失败?

更新:我应该提到池中有3台服务器,当我尝试从其中一台服务器(即服务器1)浏览服务地址时,在我通过IE中的互联网安全设置后显示标准服务页面(并且wsdl url表示它正在命中其他服务器之一 - 即服务器2)。因此,在浏览器级别可以很好地解析地址。

0 个答案:

没有答案