首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在扩展Azure应用程序服务时防止将实例预热以服务请求

在扩展Azure应用程序服务时防止将实例预热以服务请求
EN

Stack Overflow用户
提问于 2022-07-28 06:21:37
回答 1查看 166关注 0票数 1

我们将Asp.Net应用程序托管为Azure,并使用扩展功能。问题是,当我们添加新实例时,这些新实例几乎会立即启动服务器请求--在热身过程完成之前。我使用应用程序初始化模块,配置如下:

代码语言:javascript
复制
  <applicationInitialization remapManagedRequestsTo="/warmup.html">  
     <add initializationPage="/start.ashx" />  
  </applicationInitialization> 

一旦我们扩展了计划,例如从3个实例到4个,并请求站点,大约有1/4我看到了我的warmup.html -因此,我假设新创建的实例之前,平衡器考虑它实际上是热身。

请注意:我们的网站不需要HTTPS,所以不应该是一个问题。

问题:在准备好为请求服务之前,我们如何才能防止对实例的请求进行热身处理?

EN

回答 1

Stack Overflow用户

发布于 2022-08-01 10:30:51

您可以向您的web.config中添加一个部分,它告诉IIS对此路由(initializationPage)进行ping以获取状态,这将有助于在预热完成之前使实例可用。

代码语言:javascript
复制
<system.webServer>  
  <applicationInitialization remapManagedRequestsTo="/warmup.html">  
    <add initializationPage="/wait-for-init.php" hostName="appinit-site.azurewebsites.net"/>  
  </applicationInitialization>  
<system.webServer>

查看这个博客链接:https://ruslany.net/2015/09/how-to-warm-up-azure-web-app-during-deployment-slots-swap/

请参阅:https://www.iis.net/downloads/microsoft/application-initialization

另外,您可以使用像Redis的Azure Cache这样的外部缓存提供程序,您的新实例只需指向这个外部缓存,而不必重新加载数据。

此外,检查这个博客可能会有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73148106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档