Adobe Solution Partner

March 30, 2006

Is It Worth Spending A Week Tuning The JVM And Is It Rewarding?

Filed under: JVM & Java — Mike Brunt @ 5:12 pm

The answer is YES! Since the release of CFMX 6.1 we have been 100% in the Java world; from 6.1 Enterprise on CFMX is a fully-fledged J2EE (now known as Java EE) application. In the process of that move lots of good things happened to us as CF-ers. Most of what gets blogged and talked about relates to code, yet we can write the most beautiful code in the world, fully commented, locked, documented, etc., but if the server we then run it on is not optimized we will never get the results we need or deserve.

What we are finding, more and more, is that CFMX "out-of-the-box" cannot fully and efficiently support the immense diversity of coding styles,
frameworks, application call-outs, needs, etc. etc. Cannot is absolutely the right word here. It is not the fault of Adobe. What they do is the best
they can—supply CFMX with a good set of default values for the JVM-JRE. In the Java world we are expected to tune our servers to match the needs of our applications, because applications can have entirely different operational needs and characteristics. What I can say is the differences between a JVM-JRE well-tuned to the needs of an application is quite literally a night and day situation. As a note, there are over 30 different arguments that can be passed to the Sun 1.4.x JVM.

This tuning will take time but it is time well spent, and most certainly money well spent. It will save the onerous task of throwing hardware at an issue,
which almost always has little effect. More to the point, it will save clients from throwing CF out because it is supposedly "not scalable".

There are lots of great articles around for tuning the JVM. At first they will probably look peculiar, but before you know it, you will be totally
comfortable in "Eden". You will fully understand the Old (Tenured) and Young (New) aspects of that crucial operation in Java—Garbage Collection.
The "Black-Box" days will be behind you and that is a good place to be. And lastly, download yourself a trial copy of SeeFusion™ or SeeJava™. Then, take a good look at the "Counters" as your applications are running and you will see what is going on with the critical pieces in real-time. These are tools we created from our day-to-day work, and they have opened our eyes, and opened that "Black-Box".

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
  • Technorati
  • TwitThis

4 Comments »

  1. How about some links to tuning articles?

    Comment by Pete — October 12, 2006 @ 12:00 am

  2. Hey Pete. We’re about to get pretty prolific with our blogging, now that the upgrade is in place, and especially now that we’ve added some "rock stars" from the community to the Webapper team (more on that soon). There will definitely be more tuning-specific postings soon. Stay tuned (pun!), and thanks for the suggestion.
    Best,
    Patrick

    Comment by Patrick — October 12, 2006 @ 12:00 am

RSS feed for comments on this post. TrackBack URL

Leave a comment

 

Server Down?

Maximize Web application uptime by drawing upon Webapper's years of experience tuning and stabilizing many of the world's largest ColdFusion Web applications. Contact us today!