Hi
Ok, yes we've been looking at this for a very long time as it has been an issue with all the Kentico sites we have made using the Portal Engine.
I will try and explain what we have tried and discovered below and our attempted fixes and fails.
It should be made clear that the issue solely lies with the initial load of the site (or application). Once the site is loaded the performance is great, very quick and no complaints.
We are told this load time is because the site has to initially compile the code before it can laod. And as the hosting server is set to kill (close) the application down after a certain amount of idle time (when no one is on your site) when a user visits the site, the site has to recompile all the code again before it can load. This is the delay and the reason why they are slow to load.
So we initially tried asking the hosting company not to have an idle-time out on the server. This couldn't be done but could be increased from 5 minutes to 20 minutes. So we did that anyway as we thought it would help a little. It didn't make any noticeable difference as our visitors were not that frequent to the site.
Support then told us that it might be an issue with the allocated pool memory (RAM) and the amount required to compile the code. We had a limit of 150MB on the hosting account. The Kentico info says a minumum of 150MB is required, and as above Juraj says 175MB is fine for smaller sites. Well our site was just a few pages, low traffic, hardly any content, so we found a new hosting account that had 250MB RAM and gave that a try - no success. No difference in load time.
After speaking further to support it was mentioned that the portal template sites weren't optimised but just to provide working examples of functionality. I did express our concerns over this as Kentico is sold as a CMS with the ability to create working sites through the portal engine. To me, those sites should be configured to load quickly as i would have thought the common user who uses the portal engine is using that method as they don't have the more experienced .NET knowledge required to build the sites from scratch in .NET.
Anyway, as we have typically been using the corporate site template as a default template to customise, we thought it may be the fact that that template does have all the functionality of the CMS in it as examples. So we tried installing different site templates to see if they make any difference on the load time. They didn't. We even tried creating a blank site from the site wizard, carefully choosing which objects we needed on the import process (removing all functionality were we could - forums/blogs/etc). This minimal site, with just one content page still takes over 10 seconds to load initially. So that didn't help.
We then went through all the "how to optimise" your site links provided by support (see above) and changed our settings where we could. However we felt the majority of these didn't actually relate to the compiling of code that is causing the laod delay. We still haven't really had an answer from support on this issue - mainly being why is the compile time so long and what can we do to the code/site to reduce this.
So to be honest we were getting to the point of looking for another CMS provider as every client has mentioned the slow load time and with using the Kentico CMS for our own site, I could understand their frustrations.
However, in the last couple of days we feel we might have found a solution - albeit not a direct fix with the code. We were told by our hosting provider that the best way was to try and stop the application shutting down through idle time, so that you never get the situation where the site has to compile again as it's always loaded.
How do we do that - by using
www.pingdom.com which by itself is an excellent app to have because it monitors and alerts you to any server downtime.
Basically you can set it to ping your website every minute to check if the site is up an running. In doing so, this keeps the application open.
We've been using it as a trial for the last 3 days and every time we have visited our site to test it, it has loaded quickly. Our event log in the CMS still shows the occasional application closure but we're happy with the improvement.
Try it out:
www.thefamousgroup.com.au - let me know if it's slow to load for you!
Hope that helps. In summary - didn't get anywhere trying to fix it through the CMS/Site/Kentico/Code/Server/Hosting, but pingdom seems to be a fix.
And if there is any further advice for us to try, please let us know!
Thanks
Michael