Installation and deployment Questions on installation, system configuration and deployment to the live server.
Version 4.x > Installation and deployment > Precompiling and deployment View modes: 
User avatar
Member
Member
polarwarp-gmail - 11/18/2009 9:54:45 PM
   
Precompiling and deployment
So we decided that precompiling the site before going to Staging/Production would be a good move in terms of performance. However I'm finding that the publish web site action from Visual Studio is taking longer than 30 minutes (we use the portal engine development with a few custom functions and webparts). So I have to kick it off at the end of the day or sit around twiddling my thumbs for a long time!

The other thing is that after doing a deployment - it takes ages for the site to become responsive again. Like I'd say over 5 minutes. If its precompiled - what is it doing that takes so long? This morning we had to stop the site as it had caused the other sites on this shared web server to stop responding!!

I need some help - this is our first project with Kentico and this part of the process has been really disappointing.

Thanks,
Jen

User avatar
Member
Member
polarwarp-gmail - 11/18/2009 10:06:09 PM
   
RE:Precompiling and deployment
Just as more information. Yesterday we deployed it and it took ages and then would work.

This morning it took ages and then I got an error message about thread being aborted. It was around that time that the other sites on the server became unresponsive (the sys admin just told me that it appeared that something was compiling on the server but preventing the other sites from working).

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 11/27/2009 2:23:26 AM
   
RE:Precompiling and deployment
Hi,

The long compilation time is because of large number of files in the web project which have to be compiled. Moreover, sometimes it happens if there are may files to compile, that the compiler get busy or compiles the files in wrong way.

Regarding the server load - I wrote you yesterday, but I will mention it also here for other users.

I have inspected the backups of "normal" and "precompiled" website and there was no significant load when using precompiled one, it was a bit faster.

Best Regards,
Juraj Ondrus

User avatar
Member
Member
polarwarp-gmail - 11/30/2009 6:33:52 PM
   
RE:Precompiling and deployment
Have decided to try the non precompiling of the website - as we have functionality on the site that goes and creates some dynamic pages. As that page requires being cloned as an ad hoc template - this isn't working in our precompiled site.

It would be nice if precompiling meant that the code gets compiled up - but the layouts, transformations, page templates still worked as virtual objects. It seems too restrictive - but I have limited knowledge.

What is the standard that people use in having a test/dev type environment and a live environment? How are they ensuring they keep content synchronised? I'd like the production site to have the ability for content to be added there, but we're also going to have new pages being added as phase 2 of our project which will need to be migrated to production. Am debating about reseeding the tables to avoid any conflicts - but this seems a bit crazy so I'm thinking there is something I have missed.

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 12/2/2009 6:36:15 AM
   
RE:Precompiling and deployment
Hi,

I think you have not missed anything. Regrettably the design of content staging does not allow this (in 5.0 it will be little bit improved for 2 server scenario).

You development scenario is pretty complicated. There is no ideal or easy to implement way for this. Using the content staging the synchronization works fine only in one way. If you will configure the staging also backwards, it can cause a loop in the synchronization tasks.

One option is to define a strict development and testing rules - for example when changing page template, the IDs of editable regions have to be the same, so the content won't be lost after the synchronization, or after you will push the new object to testing or live. This can work fine if on the live will be only content changes, but you need to be careful also when changing e.g. document types definitions and so on. You can push them to testing and after it will pass, you can reflect them on live server and ensure manually that no content will be lost or that the web parts will be set according to the live environment.

If you will do changes in object only on your development, you can use the import export of objects and select them according to the change date. But again, if you will change e.g. a page template and remove some web parts, or document type, you need to take care of it on the live server.

Best Regards,
Juraj Ondrus