Asp.net IIS与负载平衡
如果我想负载平衡我的WCF服务,标准建议是。换句话说,请确保“保持活动”未处于活动状态 如果我希望每个请求都得到适当的平衡,并且我不介意每次调用时重新创建连接所需的延迟的微小增加,那么这是很好的 然而,在我的例子中,我实际上希望避免额外的延迟——并且我不介意通过平衡器的重复请求是否“粘滞”到一台服务器。相反,我只是希望能够从平衡组中删除其中一台服务器,并允许连接优雅地过渡到其他服务器 为了实现这一点,我需要一些方法,以便在请求仍在进行时取消激活“保持活动”。最好使用WCF消息检查器,当发出信号时,它会在回复中添加一个“Connection:close”头。不幸的是,这也许是不可能的 因此,我的下一个选择是调整IIS配置。当我的应用程序仍在处理飞行中的请求时,我会调整相关网站的“Http响应头”中的设置。在那里,你有可能找到你 棒极了,除了一件事:更改任何配置都会导致应用程序域和我的应用程序卸载。当我这样做时,IIS非常友好,允许现有的飞行中连接正常地释放,并且下一个绑定请求会导致应用程序域再次加载。所有后续处理现在都将在回复中发送“连接:关闭” 因此,进行配置更改不会损害绑定内请求,但我可能会违反请求处理的SLA,因为重新加载应用程序域所需的时间太长 简而言之,我只想找到一种方法来取消激活HTTP持久性连接,而不会导致应用程序域卸载和重新加载 如果有人能解释如何克服IIS在“连接”HTTP头上强制实施的“覆盖”行为,我将很高兴有一个自定义WCF消息检查器来处理这个问题Asp.net IIS与负载平衡,asp.net,wcf,http,iis,load-balancing,Asp.net,Wcf,Http,Iis,Load Balancing,如果我想负载平衡我的WCF服务,标准建议是。换句话说,请确保“保持活动”未处于活动状态 如果我希望每个请求都得到适当的平衡,并且我不介意每次调用时重新创建连接所需的延迟的微小增加,那么这是很好的 然而,在我的例子中,我实际上希望避免额外的延迟——并且我不介意通过平衡器的重复请求是否“粘滞”到一台服务器。相反,我只是希望能够从平衡组中删除其中一台服务器,并允许连接优雅地过渡到其他服务器 为了实现这一点,我需要一些方法,以便在请求仍在进行时取消激活“保持活动”。最好使用WCF消息检查器,当发出信号时