I’ve recently come across a blog post on Oracle site where JBoss EAP 6 platform and Oracle 12c are compared. Although not working for RedHat/JBoss I do am engaged with JBoss stuff but I’ll try to be as more independent as possible.
The biggest claim of this post is a “Cost of ownership analysis” which compares the cost of running projects using these two platforms.
JBoss is over 35 % expensive than Oracle after 5 years.
Let’s see this report made by Crimson Group. One of the first highlights of this report states the reasons for the higher cost of JBoss EAP:
In nearly all cases, JBoss deployments result in one or more levels of customization,.including:
1. Development of custom toolkits for configuration, administration, and management;
2. One-off integrations with infrastructure and other open source components;
3. Customization of the server source code”
I’m not aware of JBoss EAP 6 / AS 7 developers that are spending days at creating custom toolkits for the configuration, administration, and management. JBoss EAP 6 / AS 7 ships with a fully functional intuitive Web Console and Command Line Interface which allows complete control of the server resources.
The second one: one-off integration with infrastructure and poor integration with OS components, are we talking about JBoss EAP 6 / AS 7 ? the integration of a new application server module requires just dropping the jar and creating a simple xml file. Some modules like JDBC drivers don’t even need that, they can just be dropped in the deployment server without needing server restart.
The third one (customization of source code ?) is almost hilarious.
So I went to the date of the article and could see that (August 2011) which is about the date of the AS 7.0.0 community final release. It’s evident that, being a complex labor running report, it has been written earlier and the authors accurately avoided to specify which release of JBoss AS they are talking about.
In other words the author states that Oracle 12c is cheaper than JBoss EAP 6 using a report which was run against JBoss EAP 5 (or earlier), and attacking all weak spots of that platform, like of course a more primitive administration and management console.
The report contains some more statements which are not based on any concrete technical fact:
“Once you talk about clustering, then there are technologies that come with WebLogic that just aren’t available in JBoss, like Oracle’s Coherence in-memory data grid. When WebLogic says that it can cluster, it actually can cluster. We’ve never seen people successfully cluster JBoss and have it work.”
This does not even deserve commenting, what do you mean by successfully cluster ? even if you are talking about JBoss AS 5/6 there is support for the advanced mod_cluster and the same for Infinispan Data Grid which is the default Cache provider since AS 6.
The document concludes that JBoss is “marginally cheaper” at the beginning if you don’t have to pay license.Well at first, I would say that even if we talk about JBoss EAP, there’s a huge gap between the price (x cores) of running JBoss EAP and Oracle middleware. That’s calculated on the Redhat site although you might check it by yourself at anytime by contacting sales representative of both companies.
Second, talking about the Community edition, “marginally” or “initially cheaper” is the wrong term: it’s called in financial terms initial investment.
Using JBoss middleware, you have the option to run your service on AS 7 in production at 0 licenses cost and later on, protect your systems with a subscription if you are willing to and if you have sufficient returns on your investments, using EAP. Cutting down initial costs is not a marginal things in economic terms !! Do you have the same options at Oracle ?
About the 12 points where the two middleware are compared, there is an excellent matrix here http://howtojboss.com/2012/06/26/true-false-oracle-fud/ which debunks them completely. I’ll just expand some points contained in it.
For example, one the main theme of the Oracle claims, is that JBoss AS lacks of runtime diagnostic, in particular as far as it concerns server health state (cluster or not). They say, you have to buy other tools or Red Hat ON to have some decent monitoring. That’s a humbug. Have you heard about RHQ ?RHQ provides administration, monitoring, alerting, operational control and configuration in an enterprise setting with fine-grained security and an advanced extension model. It’s simple to use and it’s free.
Here’s application health state which can be easily alarmed and notified to the system administrators:
Perhaps the author should have at least read this: http://www.jboss.org/rhq/Blog
“Infinispan does not have any successful case of L1 or L2 caching level support using Hibernate, which lead us to reflect about its viability”.
Lots of confusion on this point: first, it’s not Infinispan which “has cache support using Hibernate” but the reverse. Second, Hibernate actually does support the use of Infinispan as second level cache provider: even a simple search on Google can provide this answer, along with examples and several sample configurations. Mentioning L1 cache confuses the reader even more. Hibernate does not allow any provider to plug in to its L1 cache and it uses a hard-coded map as a part of its session – see [ http://www.developer.com/java/ent/article.php/3892261/JPA-20-Cache-Vs-Hibernate-Cache-Differences-in-Approach.htm ]. Further, Infinispan uses the term L1 caching to mean something completely different – something akin to Coherence’s “near cache“.
About maturity and use cases, I’d rather argue that Infinispan is not a brand new project, is an evolution of JBoss Cache – which has been around since the early 2000’s. The project has collected almost three years experience providing distributed caches, data grids, extreme scalability (we do have some nice benchmarks http://infinispan.blogspot.co.uk/2010/02/infinispan-as-local-cache.html ) and cloud readiness.
Further, Infinispan is much more “open” even to non Java languages, supporting a variety of protocols (Memcached, REST and the highly optimized Hot Rod). Doubt about the importance of this? (http://www.infoq.com/news/2011/09/java-memcached-rise)
One more thing which is stressed largely in the article is the fact that JBoss has dismissed some of its products in the latest releases (the JMS provider, the Cache provider). That’s true however a bit unfair as anybody knows that JBoss products, being fueled by a worldwide Community, are naturally heading for the latest buzz. There must be of course a compromise between this and customer loyalty and, surely, JBoss platform had its share of sand kicked on its face for the frequent change in strategies between JBoss AS 4 and JBoss AS 6.
However change sometimes is inevitable and that’s not something related just with JBoss. What about Weblogic Integration which has reached a good stability after pushing a brand new product at every new release ?(sometimes with questionable compatibility with the earlier releases) and the same for the collection of Eclipse plugins which were designed to be the cornerstone of the development process, along with Weblogic Workshop.
Returning to the main concern of the article, JBoss EAP costs you more than Oracle middleware in terms of productivity: I strongly disagree. let’s take as an example the installation and getting start process: the installation of JBoss AS can be summarized into one word: unzip! The Weblogic Server track speaks of its own: http://docs.oracle.com/cd/E24329_01/doc.1211/e24492/toc.htm#BEGIN that’s a mini-book just to get started with the installation! You should account also for this when you measure the productivity of your team.
Weblogic server does has an awesome, state of art of administration console, which is able to control every aspect of server administration since the earlier 6-7 releases. The server also offers some unique features like Workmanager configuration, which can be applied even at resource level (like EJB) or perfect integration with the Oracle RAC and even more. Notwithstanding, a fair competition would require taking into account also unique features of the other side, such as one-minute to go installation, one-minute to go porting to the cloud, one-minute to go to start scaffolding enterprise apps with Forge projects, one-minute to go (besides loading time :-)) to start developing applications with JBoss Tools, an excellent testing suite (Arquillian) which lets you test in one minute your Enterprise applications. And I might continue the list.
So hats off to the Oracle Weblogic Server that has driven the evolution of all other application servers, but everyone who goes about with “Oracle middleware is cheaper than JBoss” on his lips, should be boiled with his own pudding”. 🙂
That’s all folks! Thanks to my friend Manik Surtani for providing some feedback on this document.