如何防止Azure网站入睡?

Ang*_*ker 25 asp.net iis azure azure-web-sites

我将一个ASP.NET 5,MVC 6 Web应用程序部署到Azure.似乎如果我没有在网站上停留10-15分钟,它就会进入睡眠状态,醒来需要10-15秒.

我不确定它是否正在睡着的网站,或者它正在连接的数据库.

所以2个问题.

  1. 如何防止网站如此快速入睡.
  2. 有没有办法通过网站和数据库了解Azure中正在发生的事情.他们被踢出了记忆吗?

Dav*_*gon 34

Azure Web Apps具有"始终打开"选项(具有基本/标准层),可以保持您的应用程序(和关联的Web作业)的加载.

在"设置"下查看,您将看到"应用程序设置":

应用程序设置

然后查找"Always on"设置(将为Free tier禁用):

永远在线

  • 不幸的是,这个解决方案对我不起作用. (7认同)
  • 谢谢.这样做了.值得指出的是,此功能不适用于免费套餐.我不得不切换到基本功能来获得此功能. (3认同)
  • 为什么这不是默认值! (3认同)
  • 它对我来说也不起作用......我将此设置设置为"开启",并且仍然我的应用程序需要大约15秒才能在一段时间处于非活动状态后第一次加载.第二次加载和所有下一次加载都需要一段时间非常快(不到一秒钟) (3认同)
  • @BradChristie - Always On 功能不仅仅是保持活动 ping。它还会禁用在需要时拆除站点的机制(例如,如果您的 Web 应用程序服务计划中正在运行数百个 Web 应用程序)。然后,您可以有选择地选择哪些 Web 应用程序(在您的应用程序服务计划内)保持“始终打开”状态,而不是允许在需要时将其拆除。 (2认同)

cyb*_*spy 9

我知道这篇文章有点陈旧,但问题仍然存在.

我使用一项名为Uptime Robot的免费服务 - https://uptimerobot.com/

即使在免费套餐中,您也可以创建多达50个显示器来呼叫您的网站,至少每5分钟一次,这肯定足以使您的网站保持活力.

除了保持网站活着(没有使用"永远打开"的任何连锁后果),它还可以作为您网站的监视器,让您知道它是否已关闭.

如果特定单词在响应中或不在响应中,您可以创建监视器来提醒您,因此检查内容是否正确非常容易.您甚至可以创建一个"测试"页面,在检查您网站上的各种功能后返回"确定".

  • 尽管设置为“ always on”,但我还是对Azure入睡感到沮丧。我在UptimeRobot上放置了一些监视器,这非常有趣。我的目标网页通常需要大约1/2秒的加载时间,因此它将进入睡眠状态,并需要大约10秒钟的加载时间。我每隔半小时便对其进行ping操作,这似乎足以使它保持清醒状态。响应时间的纵向跟踪效果很好。 (2认同)