Azul starts peddling Zing virty Java stack
The Zing Platform has four parts. The Zing Virtual Machine is the reworked JVM from the Vega appliances that has been ported to the x64 architecture; it requires a 64-bit chip with either Intel VT-d or AMD-V electronics to boost the performance of hypervisors. The Just-In-Time Java compiler inside of Zing is the second components, and it is highly optimized to the x64 architecture, says Sellers.
The stack also includes the Zing Resource Controller, a management console for all of the virty Java stacks you want to deploy on your x64 boxes, and Zing Vision, a kind of probe and monitoring tool that allows you to observe the guts of running Java applications to try to figure out how to tune the appliances and the applications to squeeze more performance out of them.
Sellers says that Zing Vision is akin to Sun Microsystems' DTrace probe, but is meant to be used in a production, not just a development and test environment, and is built into the product from the ground up so that using it imposes no extra performance penalty when people use it. No, it is not a zero-overhead tool as Azul's marketing materials say - that would mean it was magical - but rather Zing Vision is always running so you get a performance hot like other probes smack you with when you turn them on.
Azul is trading some of the performance gains it gets through tuning to allow continual monitoring and probing of applications. The actual performance penalty for the Zing Vision probe is one per cent or less of CPU, according to Sellers, so even if there was a hit, it would not be a big one.
"Zing is optimized to virtualized settings, and this is a big deal," says Sellers. "This is the first time where virtualization adds value to the scalability of Java applications. Finally, the app guys have a reason to embrace virtualization instead of regretting it.
To make its point with customers, Azul took the open source LifeRay portal framework and created an online retailing benchmark test. The industry rule of thumb is that if you make a shopper wait for more than 5 seconds for a page, they will get frustrated and leave. So Azul required that a Java stack running an x64 Linux box had to have a five second response time.
Under the LifeRay load, a two-socket x64 server could handle 45 users with just a hair under five second average response time. Then Azul loaded the Zing Platform on the same piece of iron, and the box could handle 800 users and had an average response time on the order of seven-tenths of a second. That's 17.7 times the number of users and 6.8 times better response.
Sellers figures you won't believe it, so you will have to try it yourself. (You can get a trial of the software here.)
The Zing Platform JVM appliance is packaged up in an Open Virtualization Format (OVF) package and currently can run on VMware's ESX Server 4.1 or Red Hat's KVM hypervisor bundled inside of Enterprise Linux 5.5; Sellers says that RHEL 6.0's implementation of KVM will be supported as soon as it is out. And of course, the free-standing Enterprise Virtualization, or RHEV, KVM hypervisor stack from Red hat is also supported.
Sellers says that there is still a lot of Java out there in the data center running on Windows platforms, so Hyper-V support is the next obvious choice. Xen, being popular out there on public clouds is also on the Zing support roadmap. Both Hyper-V and Xen are expected to be supported in the next dot release of the Zing Platform.
While many of the speedups that Azul has created for the Zing Platform have been donated to the OpenJDK project, Sellers says that Zing is most certainly a closed source product and will stay that way since Azul wants to make a living.
The Zing Platform is licensed annually on a subscription basis and on a per-server - not a per-socket or per-core - basis, and while Azul is still being cagey about the price, Sellers gave a little and said it was in the same ballpark as what people are already paying for commercial-grade hypervisors (that means VMware) and that it was four figures, not five. ®