2

I am using MVC3, ASP.NET4.5, EF5, SQL Azure.

I currently use external auto ping services (pingdom and uptime robot) pinging specific urls, not all, to try to keep the site warm. I have noticed that certain parts, perhaps which have not be used since a refresh, particularly to do with DB updates, run slowly to start with.

I understand "Always On" could be a big help, but I am unsure whether it is better than external auto ping services like pingdom? Is it more pervasive within the application?

Many thanks.

SamJolly
  • 6,347
  • 13
  • 59
  • 125

2 Answers2

4

In addition to Zain's answer, one more thing "Always On" does is that it keeps all of your instances (VMs) for the website alive and this is something an external pinger will not do as it will ping and get only one of the instances of your website each time.

Amit Apple
  • 9,034
  • 41
  • 50
3

Yes, "Always On" does exactly what the name sounds like. It keeps the site constantly warm and running, which is exactly what you're trying to do with an external auto ping service. Note that this only is available for Basic and Standard sites.

More details on "Always On" here: https://stackoverflow.com/a/21841469/21539

Community
  • 1
  • 1
Zain Rizvi
  • 23,586
  • 22
  • 91
  • 133
  • Out of interest is there any difference between what "always on" does and external sites, apart from external sites have nice stats and charts etc. – SamJolly Jul 03 '14 at 22:48
  • 1
    @SamJolly "Always On" also keeps your kudu site running (the kudu site is located at http://.scm.azurewebsites.net). The Kudu site is needed for things like ensuring your Webjobs run properly – Zain Rizvi Jul 03 '14 at 23:22
  • 1
    @SamJolly Kudu is a type of special admin site that you get for free with your Azure Website. You can find more details about it here: http://blogs.msdn.com/b/benjaminperkins/archive/2014/03/24/using-kudu-with-windows-azure-web-sites.aspx – Zain Rizvi Jul 03 '14 at 23:26
  • Ah, Thanks. Does "Always on" do an auto ping rather than set the pool to never refresh, ie if idle, which one could do on a local IIS instance. Really appreciate your help by the way. – SamJolly Jul 03 '14 at 23:29
  • 1
    @SamJolly The "Always On" setting affects code running on the vm hosting your website and tells it to never clean up your site and put it in a cold state. Letting sites go into a cold state is useful when you have a whole bunch of rarely used sites on one VM, since by letting the majority of them go cold you free up computer resources to be consumed by whatever sites are actually serving requests at the moment. – Zain Rizvi Jul 03 '14 at 23:32
  • So it is like a pool not refreshing, which is better than an auto ping. – SamJolly Jul 03 '14 at 23:36
  • 1
    @SamJolly Sort of. It stops the site from being shut down in the first place (aka, going cold) rather than waiting for the site to shut down and then restarting it (which is more like what the auto ping does) – Zain Rizvi Jul 03 '14 at 23:42