当MVC应用程序部署到azure环境时,页面加载速度很慢,并且一旦部署完成,网站的响应时间也会延迟几秒钟。
当在生产环境中部署应用程序时,这种缓慢会导致糟糕的用户体验。
由于部署后网站立即响应延迟,自动化测试脚本失败
使用Visual Studio发布选项设置从Visual Studio 2013到Azure Web App服务进行部署。
我们尝试过: 部署计划在30天内进行,也可以在中午进行,但部署发生时,世界其他地区的用户会遇到问题。
有人可以帮助我解决问题,在生产中进行部署时,用户应该没有任何区别。
答案 0 :(得分:2)
将应用程序部署到Azure Web App后,第一个请求的加载时间略有增加。幕后发生的事情是底层Web应用程序必须先将MSIL预编译为机器代码,然后才能为站点提供服务。有关详细信息,请参阅https://msdn.microsoft.com/en-us/library/ms366723.aspx。
Web App使用的应用程序池也会在活动时定期回收。然后也会发生相同的预编译。通过启用" Always-On"可以最大限度地减少停机时间。用于Web应用程序。有关如何启用它的更多详细信息,请参阅https://azure.microsoft.com/en-us/documentation/articles/web-sites-configure/。永远在线的功能会定期对网站进行ping操作,以防止网站失效。
此外,在部署到Azure Web App时,最大限度地减少停机时间。请查看使用部署位置https://azure.microsoft.com/en-us/documentation/articles/web-sites-staged-publishing/。这里的想法是,您首先部署到部署插槽(而不是自己的Web应用程序,让它预热)并将其交换为生产槽。这样可以最大限度地缩短Web App的停机时间。要自动化此过程,有一项称为自动交换https://azure.microsoft.com/en-us/documentation/articles/web-sites-staged-publishing/#configure-auto-swap-for-your-web-app的功能可以为您执行此操作。
部署广告位可用于标准和高级应用,而永远在线可用于基本,标准和高级应用。