Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Azure Web App swap happening BEFORE warmup

Since about a week when I publish a new version of our Web App and do a Swap from Staging to Production, it actually seems to swap before the warmup initialization is done.

As it is a large application it will takes more then five minutes to warmup the site, making the application unresponsive.

I have official Azure support, but it is taking a long time to respond to this request and I still have no answer that works.

I can't fix any issues on our platform or publish a new version without bringing the whole site down for eight minutes. This is a highly visited website, with paying clients.

Does anyone know:

  • anything that I could investigate myself?
  • a workaround or any tips that I can take a look at myself to try to fix or work around this issue?

enter image description here

Extra information

I do use applicationInitialization, and I see that Azure is hitting the pages - it just happens after the swap instead of before.

<system.webServer>
    <applicationInitialization>
        <add initializationPage="/nl" hostName="mydomain.com" />
        <add initializationPage="/warmup-application-for-azure" hostName="mydomain.com" /> (special page just for warming up services)
        <add initializationPage="/deeplink1" hostName="mydomain.com" />
        <add initializationPage="/deeplink2" hostName="mydomain.com" />
        [etc]
    </applicationInitialization>
</system.webServer>
like image 787
Dirk Boer Avatar asked Feb 22 '19 13:02

Dirk Boer


People also ask

What is azure auto swap?

Configure auto swap Auto swap streamlines Azure DevOps scenarios where you want to deploy your app continuously with zero cold starts and zero downtime for customers of the app.

Can you change a connection string after you deploy your Web application to Azure web app service?

In the Azure portal, navigate to your app's management page. In the app's left menu, click Configuration > Application settings > Connection Strings. To add or edit connection strings in bulk, click the Advanced edit button.


1 Answers

Maybe not 100% relative to this question but since I had similar issue with warm up I want to share how I solved it.

I used to have issue with auto-scaling because my nodes were not warmed up due to url rewrite module. So what if you have url rewrites in your app make sure that you are checking for

 <add input="{WARMUP_REQUEST}" pattern="1" negate="true" />  

Now this is in official documentation and it has link to common problems

like image 193
Vova Bilyachat Avatar answered Nov 13 '22 19:11

Vova Bilyachat