我正在寻找为 WCF 服务提供冗余的正确方法。我想我正在尝试解决代码中的“基础设施”问题。我没有跟上负载平衡器的速度,但似乎应该有类似路由器的东西来做到这一点。
// Cycle through the list of service.
foreach (var uri in InfrastructureInformation.ServiceUris)
{
try
{
using (var client = WcfClientFactory.Create<ServiceClient>(uri))
{
// Do stuff here.
}
}
catch
{
// todo: Do not catch "exception" here. We have to find a better way of doing this.
// Try the next URI.
}
}
似乎应该有一种方法可以让我可以点击某个“平衡器”将其移交给可用服务的 URI。如果一项服务因维护而停机,那么平衡器就不会向该服务发出任何请求。
现在我知道了 WCF 路由,我想这就是答案。只需安装一个 WCF 路由器并让它发出连接,但如果它倒下会发生什么?这不会给您带来单点故障吗?我正在寻找更工业化的东西。