Tomcat v Weblogic

November 9, 2007 at 10:15 am | Posted in Performance | 5 Comments

Tomcat v Weblogic (or WebShpere or Oracle AS) – this is one of the perennial questions that comes up when discussing Documentum deployments and often the main topic is one of performance. I attended an ask-the-experts session at Momentum this week and this question was addressed by Ed Bueche. His answer was that whenever they had looked at this there didn’t seem to be a big difference, and that accords with my recollection from the benchmarking whitepapers Ed’s team have produced on this.

Ed did make a couple of interesting additional points. First although the product vendor (BEA, IBM, Open source) didn’t make a lot of difference to performance, the version of the jvm did. As new versions (1.4 -> 1.5 -> 1.6) of the JVM were released there seemed to be very substantial improvements in performance. There can also be differences in the JVM implementations (Sun v JRockit) although this can vary according to OS (and possibly hardware) platform. Secondly in one particular area Tomcat does ‘score well'; it does seem to be lighter on memory than Weblogic. The inclusion of weblogic in the Content Server deployment in D6 does now make it difficult to deploy Documentum suite on a 2GB laptop (something that’s very important to people who need to demo or simply develop). Apparently EMC are working on this. In the meantime looks like I have to buy a new laptop (oh dear).

Ed went on to make the very important point (one that I fully endorse) that really you shouldn’t just be looking at simply performance as your guiding principle in which technology to choose. You need to consider the skill set of your development and support staff (including your 3rd party integrators!!!) – you are far more likely to get a successful and performant deployment if you are building on existing skills.

I would add that if you are asking the question is X ‘better performing’ than Y you are really asking the wrong question. There are many facets to performance including resouce usage (CPU, IO, Memory), features (cluster support, multipe JVM support) and platform support (Unix, Windows) that you can’t really boil it down to a single better or worse comparison. It depends very much on the specifics of your implementation.

Ed also mentioned your organisation’s attitude to support. Some organisations really like the idea of having a paid contract with a vendor to support all their important products. In this case you probably should be looking at the proprietary solutions like BEA Weblogic or WebSphere. But other places may be happy that their developers can grab the Tomcat source code work out problems and provide solutions themselves, perhaps using resources on the internet. I suspect there are even people who you can contract to provide this sort of support. In my view this is really a strategic decision that should be set at a high level by the organisation itself.

Finally there are issues to do with administration and cluster support. Although I think tomcat has come a long way on this it still lags behind. Weblogic provides clustering support out-of-the-box, whereas you probably need more effort and know-how to get clustering up and running on Tomcat. Again this goes back to the existing skill set – if you already have people with considerably experience with Tomcat this is much less of an issue.

About these ads

5 Comments »

RSS feed for comments on this post. TrackBack URI

  1. Good point.

  2. I’m interested to know if this accords with other people’s experience. Are there examples where this general advice needs to be modified?

  3. [...] Content Server requires almost 3 times the amount of RAM.  This is due to the increased overhead of WebLogic versus Tomcat.  It isn’t an unreasonable amount.  It just means that you actually need to look at [...]

  4. At previous gigs, with previous versions of Documentum, most of the time the client has been fearfully pinned by EMC into using an ancient version of Tomcat and an ancient version of Java, because “anything else is unsupported”. Most can’t get past the idea to the point where we can consider using Weblogic or any other JVM or even any other version of Java.

    One client went so far as to completely rewrite a J2EE application (that was working with no problems at all) because an EMC consultant told them the version of Java (1.5) was “unsupported”. They took this to mean “completely incompatible”, even though there were zero problems with the application.

    No, this doesn’t accord with my experience, because of the idiots out there who have frightened most of my clients into not trying anything that EMC “won’t support”.

    Seriously, I hope they don’t keep saying this with V6, because it’s driving me mad.

  5. I realise that this is an old thread but it sounds like Tomcat is just dandy if you don’t fancy forking out a heap of cash for app server licenses and clustering isn’t an issue.

    I still find it incredible that Documentum will not support clustered Tomcat though. I mean, they’ve benefitted from using Open Source components in their stack (including Tomcat itself). Surely they could go the extra couple of yards to support clustered Tomcat.


Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com. | The Pool Theme.
Entries and comments feeds.

Follow

Get every new post delivered to your Inbox.

Join 342 other followers

%d bloggers like this: