Tomcat in the Enterprise

Rod Johnson (springsource) has a pretty interesting post on Tomcat in the enterprise.

Recently we've begun running polls on SpringFramework.org, and some of the results are interesting. The question Which application server(s) do you use? produced the following results: BEA WebLogic (various versions) and JBoss AS shared first place among Java EE app servers on 16% each, with IBM WebSphere just behind on 15% and Glassfish putting in a creditable performance on 5%. But the easy winner was Tomcat, on 37%.

... Tomcat is a clear leader. It may well be the elephant in the room. This is particularly interesting given that no large (or even medium sized) vendor is promoting Tomcat. The Tomcat numbers aren't driven by vendor marketing, but by thousands of companies making similar decisions.

Our experience confirms this as well.

Drive for Simplicity
plumbing.jpg The why is pretty clear, and it's simply a part of the undeniable movement towards simplicity wherever possible ... Tomcat is focused, simple, and works well. Missing is much of the cruft and many of the barnacles that have attached themselves to traditional Java EE app servers.

Of course, many of those barnacles features were deliberately added over time to solve specific problems. Fine so far as it went, but the cumulative effect can get pretty ugly.

This is pretty much like what happens to Curly (in this picture from the classic A Plumbing We Will Go ) when he tries fixing a simple leaking faucet ... before he knows it, he's in a cage of his own making, and to add insult to injury water is still leaking on his head.

While this may make for funny slapstick comedy, it's a terrible way to build enterprise-grade apps.

Even so, this complexity problem permeates enterprise computing - infesting not only the app servers but the data tier, operational frameworks, and pretty much everything else as well.

It's Time
That's why the time for aggressive simplification is now. The quiet, yet near-pervasive adoption of Tomcat is a clear signal that the desire for simple, clean stuff that works is widespread.

What's new is that this going beyond merely desire - that it is now very practical to rethink app architectures to institutionalize simplicity, while making gains in scalability, reliability, operational integrity, and cost at the same time.

Post new comment

The content of this field is kept private and will not be shown publicly.