I am using pre-beta versions of ColdFusion Blackstone on some of my applications (so as to test new features), and I’ve been updating the version used on a fairly regular basis, without any real downtime.
How is this possible? Simple. I have ColdFusion running on top of JRun4. When I want to move to a newer build, this is what I do:
1) Download the build
2) Run the installer and select option 3 to create a new ColdFusion EAR or WAR
3) Create a new JRun service instance using the JMC
4) Deploy the new ColdFusion EAR or WAR into the new instance
5) Run some tests to make sure the code is working properly (all this time traffic is still being services by the previous version)
6) Run the wsconfig utility to map the sites to the newly deployed ColdFusion (now traffic is being services by the new version)
7) Drop the previous JRun service (not necessary, but might as well not waste resources)
Oh, and if there is a problem, switching back is just a matter of starting the previous service and running wsconfig again.
It’s a thing of beauty, and another great example of using multiple ColdFusion instances. If you have ColdFusion Enterprise, and are not yet using multiple instances, I’d strongly suggest that you consider doing so, quickly.