我在某些IIS Web服务器的前面有一个HaProxy负载平衡器。 Haproxy会在特定路径上检查iis应用程序是否已启动或正在维护。
我想提出一个解决方案,在这里我可以安全地重新启动随机的IIS计算机,然后使用它来触发我的iis应用程序:
可以通过任何方式完成这两件事吗?
Windows Server 2016,.Net 4.7.2
这将不起作用,因为当IIS运行Application_End代码时,所有对IIS的调用都将返回“服务不可用”:
protected void Application_End()
{
var log = SystemLogManager.GetLogger(GetType());
try
{
log.Warn("Ending application. Hanging for 15 seconds...");
Thread.Sleep(TimeSpan.FromSeconds(15));
log.Warn("Done end");
}
catch(Exception ex)
{
log.Error("Unexpected error in application end", ex);
}
}
答案 0 :(得分:2)
您可以编写可在任何服务器上调用的powershell脚本,并且:
我希望这可以为您提供帮助