2017-04-04 64 views
0

我们在Azure应用程序服务(Web应用程序)上托管ASP.NET Core应用程序。Azure Web应用程序 - 阻止路由到特定实例

我们各个实例需要一些时间来“预加载”处理请求所需的所需数据。但是,当扩展时,请求将被路由到仍在准备中的实例。

应用程序服务负载平衡器如何决定实例何时准备好以及请求可以路由到它?有没有办法阻止路由到某个特定的实例,直到我们认为它准备好了?

+0

据我所知,Azure的负载均衡器仅适用于虚拟机的 –

+0

我不是指到Azure的负载均衡。只是在App Service上路由的内部负载均衡器。 – davenewza

回答

1

尝试在web.config中使用applicationInitialization节点。这指示IIS在应用程序收到其第一个请求之前向您指定的URL发出预热请求。

我之前在慢速交换中使用过这个。但是通过阅读IIS here上的文档,它看起来也适用于新实例。我没有尝试过,但扩大了,但让我知道这是否适合你。

这里的web.config文件中使用它的示例代码:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.webServer> 
    <applicationInitialization> 
     <add initializationPage="/pagetowarmup1.php" /> 
     <add initializationPage="/pagetowarmup2.php" /> 
     <add initializationPage="/pagetowarmup3.php" /> 
    </applicationInitialization> 
    </system.webServer> 
</configuration> 
相关问题