Warming up Authenticated App Service on Azure
Asked Answered
G

1

7

I understand that I can specify a number of pages in the application Initialisation section of the web.config to be run before the deployment slot is swapped. What I'd like to be able to do is to simulate logging into the App and then visiting a whole raft of pages so that the App is fully warmed up.

Gentleness answered 15/2, 2016 at 15:11 Comment(3)
What is the purpose of logging in with the user? Is it to warm caches or something else?Binnings
To access 99% of the pages in the system you need to be a logged in user, so for them to be ran for the first time we need to be logged in.Gentleness
I am dealing with the same issue and have yet to find a solution. Our MVC site is completely behind forms auth and the App Initialization Module does not seem to be able to handle this situation. Every time we scale out, that new instance isn't warmed up!Vaish
B
1

If you need to warm the caches for the site you could use the applicationInitialization module to point an endpoint that you have setup that would warm the caches for you. This works well with the Auto Swap feature. A detailed description of how to do this is at How to warm up Azure Web App during deployment slots swap. The way you would configure the applicationInitialization module is:

<system.webServer>  
   <applicationInitialization >  
        <add initializationPage="/youendpointToWarmCaches" hostName="youhostname"/>  
   </applicationInitialization>  
<system.webServer>  

That might do enough to meet your needs. If not, and you still need to make requests to the authenticated endpoints to warm up the app then applicationInitialization module will not work as you point out. Using the module to point to your authenticated endpoints you will end up getting 401 or redirect responses.

Another option is to use the Swap with Preview Functionality. Again there is a great article describing how to use Slot Swap with Preview in detail.

The Swap with Preview feature loads the App and then applies the production settings without actually making the swap. You can then make requests to staged site to warm up the authenticated routes (be careful this is against production settings) . Once you are done warming/verifying you can make the actual swap. The worker process is not restarted and so you have a fully warmed app once the swap is complete.

The swapping can be automated with Powershell and be part of our your build process.

Note: Azure App Service Authentication won't work with Swap Preview.

Hope that helps!

Binnings answered 18/2, 2016 at 14:49 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.