IBM’s WebSphere Application Server (WAS), and the Java EE applications that run on it, have been a major virtualization target for years. From informal surveys we’ve conducted, a significant number of customers who are virtualizing their Tier 1 applications today are also virtualizing WAS.
IBM’s Software Group itself has invested significant time and effort into ensuring that WAS is easy to deploy on virtual machines with VMware vSphere™. The IBM WebSphere Hypervisor Edition product is packaged as a virtual machine compatible with vSphere. The IBM WebSphere CloudBurst Appliance enables customers to rapidly deploy WAS in virtual machines on vSphere from a central set of catalogs, and manage or customize them from there. The WebSphere Virtual Enterprise product can also make use of features within vSphere. These types of products recognize that, in many people’s minds, the best virtualization platform for deploying WAS and Java applications on X86 is VMware vSphere.
The question that application architects always ask is “How will this platform perform and stand up to production-level workloads?” This concern is common to people deploying all types of Java applications on all platforms, whether virtual or not, but it is brought into sharper focus when the deployment platform is a virtualized one.
A few years ago, performance levels for virtualized Java applications equaled about 85% of their native equivalent. But that situation has changed dramatically. Now we are seeing numbers for virtualized Java applications and WAS workloads running on VMware vSphere that are on par, or within a few percentage points, of native performance. This phenomenon was highlighted recently in a paper published by HP, in which the engineers performed tests on a Day Trader application run on WAS v7 on vSphere v4.0. You can download this paper from the following location to see the test results:
This paper shows that for this particular application, which provides a fairly comprehensive test of a large number of Java EE features, there is very little performance difference when you run it on the latest hardware (Intel EPT or AMD RVI technology) and use the latest versions of VMware vSphere (4.x). This is very good news for those considering virtualizing their WAS-based applications and portals, because they can now expect to do so with confidence and not impact on their customers. We have heard reports from some customers that their end users did not know that applications or system were virtualized at all. One example of a WAS deployment is documented in a customer case study from an insurance company and is available at:
Based on these results, we recommend that you consider VMware vSphere as the virtualization platform to use for your Java and WAS-based applications. Following VMware best practice recommendations on virtualizing Java, as detailed in the document below, will also help you to get the best performance out of your virtualized Java systems and applications:
You can also get more information for developing and running Java and middleware applications at the VMware and SpringSource web sites: