gpt4 book ai didi

wcf - 如何对 IIS 6 托管的 WCF 服务进行负载平衡?

转载 作者:行者123 更新时间:2023-12-04 12:56:39 25 4
gpt4 key购买 nike

我们使用 BigIP 在我们的两个 IIS 服务器之间进行负载平衡。我们最近在这两个 Windows Server 2003R2 服务器上部署了由 IIS 6 托管的 WCF 服务。

每个服务器都配置了两个主机头:一个用于负载平衡器地址,然后是第二个仅指向该服务器的主机头。这样我们就可以引用负载平衡组中的特定服务器进行调试。

所以当我们运行时,我们立即得到了错误:

This collection already contains an address with scheme http. There can be at most one address per scheme in this collection. Parameter name: item



我做了一些研究,我们可以实现一个过滤器来告诉它忽略其中一台主机,但是我们无法从该地址访问服务器。
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix="http://domain.com:80"/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>

在这种情况下,我们可以通过 http://domain.com/service.svc 访问 WCF 服务的最佳解决方案是什么?和 http://server1.domain.com/service.svc ?

如果我们应该按照某些站点的建议创建我们自己的 ServiceFactory,是否有人有任何示例代码?

任何帮助深表感谢。

编辑:如果可能的话,我们将需要能够从两个地址中的任何一个访问 WCF 服务。

谢谢你。

最佳答案

在你的 bigIP 创建 2 个新的虚拟服务器
http://server1.domain.com/
http://server2.domain.com/

为每个 VS 创建一个池,其中只有特定的服务器 - 因此不会有实际的负载平衡并以这种方式访问​​它。如果您缺少外部 IP,您仍然可以使用与生产域名相同的 IP,只需使用 irule 将流量定向到适当的池

希望这可以帮助

关于wcf - 如何对 IIS 6 托管的 WCF 服务进行负载平衡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/122688/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com