Reputation: 30107
I'd like to get the pulse of the community on whether to precompile or not. I know its cold start time is faster, and it hides code. However, there is something dirty about it, IMO. Maybe its the name, compiling a website sounds incorrect.
In general how are you deploying web apps?
Upvotes: 17
Views: 6205
Reputation: 39846
Okay I have two answers depending on the situation:
Situation 1: I am deploying and I will continue to deploy upgrades. I use the copy method. It's simpler for me, I know what I'm doing and that way I don't have to write an installer.
Situation 2: An unknown party [i.e. the client] with unknown skill is going to be attempting to deploy my site, I write an installer and documentation an 8 year old can follow on going through the installer right through to configuration - and if necessary data input. So in this situation the precompiled method is far easier.
So I don't use either religiously, I pick the most appropriate method for the situation.
Upvotes: 8
Reputation: 2197
In our case precompiling found us some pages that did not compile.
So I'd reccommend doing a precompile during the build, but not necessarily deploing it.
Upvotes: 1
Reputation: 26341
Having the source code laying around on Production servers is generally a bad plan. Taking the pre-compiled approach feels a bit safer :)
Our pre-compiled web site gets built into an MSI package that is used for deployment to a clustered environment.
Upvotes: 3
Reputation: 61242
i only precompile websites that are sold and licensed commercially, in order to protect the source code from modification.
supposedly this benefits performance, but that is secondary; it's nearly impossible to rationally support a commercial web site product if anyone can muck with the code!
Upvotes: 10
Reputation: 43855
We do not deploy our websites precompiled.
Reason: "that's how we did it the first time and it hasn't broken yet."
Upvotes: 0
Reputation: 532605
I use precompiled, updateable web sites exclusively for ASP.NET web forms.
Upvotes: 2
Reputation: 13386
We use the precompiled approach on my team because we have to hand off the deployment to the infrastructure team. We build an MSI package (with a web deployment project) that installs the new release to the website.
It's more of a separation of duties/responsibilities thing that drives our methodology though, nothing technical.
Upvotes: 3