Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用负载平衡器消除ASP.NET应用程序重新加载延迟?_Asp.net_Load Balancing - Fatal编程技术网

如何使用负载平衡器消除ASP.NET应用程序重新加载延迟?

如何使用负载平衡器消除ASP.NET应用程序重新加载延迟?,asp.net,load-balancing,Asp.net,Load Balancing,ASP.NET应用程序的一个问题是,它们会定期重新加载自己,这会导致长时间延迟,并可能导致在此期间访问站点的用户超时 对于小型网站而言,这可能不是问题,但如果用户碰巧被路由到正在重新启动的web场中的节点,则对于高流量网站而言,这可能意味着严重的停机 预编译可能会有所帮助,但对于有很多页面的网站来说,仍然存在不可避免的延迟 负载平衡器是否能够“知道”特定服务器上的ASP.NET应用程序域是否正在重新启动?然后,他们可以在此服务器周围路由流量,直到应用程序完成重新启动 目前,我的负载平衡器在网站上

ASP.NET应用程序的一个问题是,它们会定期重新加载自己,这会导致长时间延迟,并可能导致在此期间访问站点的用户超时

对于小型网站而言,这可能不是问题,但如果用户碰巧被路由到正在重新启动的web场中的节点,则对于高流量网站而言,这可能意味着严重的停机

预编译可能会有所帮助,但对于有很多页面的网站来说,仍然存在不可避免的延迟

负载平衡器是否能够“知道”特定服务器上的ASP.NET应用程序域是否正在重新启动?然后,他们可以在此服务器周围路由流量,直到应用程序完成重新启动


目前,我的负载平衡器在网站上ping了一个简单的.aspx页面。如果出现延迟或页面加载失败,主机将停止旋转。是否可以在IIS级别而不是ASP.NET级别执行更有针对性的运行状况检查?

IIS6和IIS7都支持按固定时间/间隔安排应用程序池重新启动。如果您的负载平衡器可以按计划取出节点,则可以同步这两个计划

您还可以通过编程方式强制从负载平衡器进行回收,请查看2个选项


当然,当应用程序池因其他原因重新启动时,这些不会处理这些情况。

如果您使用IIS7,即使在应用程序池重置后,您也可以查看应用程序预热模块来启动应用程序


有趣的是,没有提到负载平衡器或运行状况检查。