Installation and deployment Questions on installation, system configuration and deployment to the live server.
Version 4.x > Installation and deployment > performance of Kentico CMS without precompilation View modes: 
User avatar
Member
Member
mat.dodgson-atomicmedia - 12/21/2009 5:46:27 PM
   
performance of Kentico CMS without precompilation
Hi.

I am investigating the performance issues we are having with Kentico CMS. We have developed a reasonably large and complex web site for a customer using Kentico CMS.

We cannot use the precompilation mode for Kentico CMS for the following reasons:
• Cannot create a new page based on a new template unless a developer builds and deploys the web site
• Cannot add a web part to an existing template unless a developer builds and deploys the web site
• The design of our app requires that we be able to create new templates in code so this would break in precompilation mode

Our customer requires – and I consider it reasonable - to have non technical staff make changes to templates.

Considering precompilation is not an option for us, I have been investigating the performance of our Kentico CMS project without precompilation.

I have found there are 2 issues with the performance of our Kentico CMS web site: data access and asp.net control compilation. The data access problem is solved using the caching capability of Kentico and I am happy with the way the caching works. However I am not happy with the asp.net control compilation performance.

After an application is reset, the first page in the site that is hit incurs a time startup cost. It takes a minute or two for the first page to appear. I accept this cost as it affects most asp.net web sites.

I have however found that every page has a time startup cost. So not just the first page that is hit in the site, but the first and second time every page is hit incurs a time startup cost. I can see from my analysis that every page has a web control for the page itself and it may also contain other web controls. All the web controls require compilation before the page can be displayed. Our time startup cost on all pages range from 1 second and 5 seconds depending on number of controls that need to be compiled.

I am not sure why it requires two attempts at compilation – it should only require one attempt. Both attempts seem to compile the same thing but the filename of the dll being created in ‘temporary asp.net files’ is slightly different. I assume this is a bug in the Kentico request handler.

Can you advise us on a course of action? Perhaps you can advise how we can speed up compilation? We need this web site to perform well without precompilation.

Thanks

Mat

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 12/23/2009 12:39:00 AM
   
RE:performance of Kentico CMS without precompilation
Hi,

What are your current caching settings? For example for particular controls on the page - is the cache item name set?
I am not sure if you have seen the blog posts from our CTO about the caching and performance and also his webinar on this topic. If not, please let me know and I will send you those links.

Regarding the compilation - this seems to be more related to .Net framework and Microsoft, since Kentico is not compiling the code. Anyway, could you please try to save all virtual objects to disk (Site Manager -> Administration -> System -> Deployment) and turn the virtual path provider off (by adding this key to web.config file: <add key="CMSUseVirtualPathProvider" value="false" />). If the problem will remain, it is caused by .Net framework.

Also, regading the page start up - 5 seconds is very good time, but if you are using cache and the application is restarted, it will take few more seconds to load everything back to the cache again. You can try to create some utility which will do requests on your pages, so they will be loaded to the cache and when the visitor comes, it is already loaded in memory.

Best Regards,
Juraj Ondrus

User avatar
Member
Member
kentico-2622.co - 1/13/2010 8:52:22 AM
   
RE:performance of Kentico CMS without precompilation
Hi Juraj,

I am having a similar problem,

I have turned on caching in the following areas as recommended in a couple of threads in:
- CMSDesk > Properties > General >Cache = 1440
- SiteManager > Settings > Cache content (minutes) = 1440
- SiteManager > Settings > Cache page info (minutes) = 1440

Is it possible to get a link to the webinar and blog post please.

Many thanks

Mac

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 1/14/2010 2:16:41 AM
   
RE:performance of Kentico CMS without precompilation
Hi,

I posted the links to the other thread, you can find it here.

Best Regards,
Juraj Ondrus