For this web site I'm running Sitefinity on a shared hosting platform; specifically I'm using
DiscountASP.Net to host my web site.
Each time you access Sitefinity for the first time it has to start-up. As near as I can tell this involves sending a signal to a gerbil named Fred. Fred is kept in a small cage at Telerik and when you access a Sitefinity web site it rings a small bell in his cage. When Fred hears the bell he is supposed to press a big green button in his cage, which then starts the web site.
The problem is that Fred is a bit slow. For me this start-up process was taking around 30 seconds. In "Internet time" that is roughly 40 years.
No worries though; this only happens during the first web site access, right? Wrong! Apparently IIS has some setting where it makes an application go to sleep after 20 minutes of non-use. You may find it hard to believe but this web site is frequently not accessed every 20 minutes. That means my web site was going to sleep and I kept having to rely on Fred the Gerbil to start it again.
I found a solution though; all I needed to do was create a scheduled task that would access my web site every 15 minutes. DiscountASP.Net had something pre-built into the Control Panel that allowed me to set this up. If you aren't so lucky though, you might consider using some type of
Web Site Uptime Monitoring Service.
TIP: Make sure that you have the scheduled task access an actual page and not a page that is going to result in a redirect. For example; if I access
http://www.goondocks.com, this will result in a redirect to
http://www.goondocks.com/blog.aspx. A redirect won't keep your web site alive, whereas accessing an actual page will.
UPDATE: There are a few more performance related tips & comments in this
Sitefinity forum thread.