*Problem Overview*
We've been using ColdSpring a lot more in our recent projects, having
roughly 65-100 beans being managed and auto-wired into our Model-Glue
applications. One big side-effect of this however has been the spin-up with
our sites. Since we're auto-wiring and have them all defaulted to
lazy-init=true, visiting a feature on the website for the first time that
injects a a few service layers with several sub-components might take 2-3
minutes to compile on a busy server. Future page loads are very quick, but
this means we have to run functional test / unit test on the live site with
extremely high timeouts that would touch every aspect of the site to ensure
that all components are compiled. This was amplified this week when one of
our servers was forced to restart after a barage of brute force attacks,
killing the compiled classes and having to recompile them all over again and
we're getting random reports of sites being down, all related to this issue.

*Resolutions?*
What's the best practice to mitigate this? Here are just some of my thoughts
that I would love some feedback on:

   - Turning all of the root components into lazy-init=false? Doing this
   would definately yeild and extremely long spin-up time for our sites, but
   should at least fix the hang-up on feature load.
   - Changing the JAVA version - I know there was a lot of discussion about
   the CF 8.0.1, which is where I'm experiancing this, having the bug with the
   class compiles. Is there a stable version someone else is running in
   production that has greatly fixed this issue? Overall is anyone running an
   alternate recommend Java version in production for CF8.0.1?
   - Maybe expanding on the discussion earlier about a read only server. If
   we could somehow compile these classes ahead of time then at least we could
   do the work up-front on our development machines and not have to compile on
   the fly on production that would obviously make the most sense. I'm not
   necessarly suggesting an out-of-box approach baked into ColdSpring but if
   there was at least a recommended way to accomplish that that would be great
   - Option D - none of the problems are because of the java version, large
   amount of ColdSpring beans at all, it just has to do with setting X in my
   ColdFusion or just me using ColdSpring incorrectly that's causing the
   problem. If so I'm all ears.


Thanks,
Roy

Reply via email to