Was Azul Systems the right choice for bringing Java to the Azure cloud?


News: Was Azul Systems the right choice for bringing Java to the Azure cloud?

  1. When the Microsoft folks in charge of the Azure cloud decided that it was time to get serious about embracing the enterprise Java community, they knew that their first step was to bring a world class implementation of a Java runtime environment to their platform.

    Through Zing, we make high performance virtual machines focused on the higher end of the market where response time sensitive applications are doing large amounts of in-memory computations.

    Gil Tene, Azul Systems' CTO

    On one end of the extreme, Azure could have just licensed the JDK from Oracle. On the other side of the spectrum, Microsoft could have just plucked the latest GPL licensed version of the OpenJDK and had their own engineers customize the project accordingly. In the end, Microsoft took a position somewhere in the middle of these two extremes by choosing to partner with Azul Systems, the people behind the closest thing the Java community has to an infinitely scalable JVM. As was recently announced, "Microsoft and Azul Systems are partnering on a Windows distribution build of the community-driven open source Java implementation, known as OpenJDK (Java Development Kit), for use on Windows Server on the Windows Azure cloud computing platform." 

    Azul Systems: Microsoft's partner of choice

    So why did Microsoft choose Azul Systems as their partner of choice? One of the reasons might simply be due to the fact that there wasn't much of an alternative. "If you look around the Java lanscape right now, there really aren't that many vendors," admits Azul Systems' CTO Gil Tene. Azure's choice really came down to choosing between IBM, Oracle, Red Hat and Azul.

    Of course, IBM isn't so much in the market of developing JDKs as much as they are in the market of developing a massive stack of software products that run on the Java virtual machine. And the big reason IBM develops their own flavor of the Java Virtual Machine is so they can support a single line of products across their various, proprietary hardware and software platforms. IBM builds JVMs for IBM, not for their competitors.

    Oracle is of course the steward of the Java platform, so they too would no doubt have been interested in working with Azure. But Oracle is so highly vested in the same middleware space as Microsoft that it would be a competitive mistake to allow Oracle to tailor a JVM for Azure that might give the Oracle stack of products a competitive advantage. Sometimes it just makes sense not to line the pockets of your direct competitors.

    And the third vendor in this peculiar oligopoly would be Red Hat. They're pretty active in the OpenJDK space, and they certainly know the Linux platform inside and out. After all, they were the company that migrated all of the old, legacy iron away from the scattering of Unix platforms and helped consolidate the industry on Linux, much to the chagrin of the Microsoft developers who were pushing enterprise Windows software. Certainly leveraging the GPL licensed OpenJDK that Red Hat has invested so heavily in would be a smart move for Azure, but on the other side, allowing a company that has Linux, not Windows, as their primary revenue generator, might not be the brightest of ideas.

    Choosing the high performance experts

    So with IBM, Oracle and Red Hat out of the picture, what do you have left? Well, all you're left with is Azul Systems, a company that has prided itself on taking the OpenJDK platform and customizing it to a point where they are now running the most linearly scalable Java platform in the industry. They have no product lines that directly compete with Microsoft and Azure, they have extreme expertise in the virtual machine space, and they understand the various issues that arise when working in a virtualized environment of hypervisors spread over an immense number of processors, distributed across an unpredictably large geography. "Through Zing, we make high performance virtual machines focused on the higher end of the market where response time sensitive applications are doing large amounts of in-memory computations," says Tene. Leveraging the expertise of Azul Systems probably isn't the worst possible scenario for Azure.

    Microsoft is always a tough sell in a room full of Java professionals, but anyone involved in the world of performance and scalability knows that Azul Systems is the premier provider in this space. With Azul behind Azure's JDK support, there will no doubt be many enterprise Java shops that will follow them to Microsoft's cloud.


    Threaded Messages (4)

  2. Oracle and Microsoft[ Go to top ]

    FWIW, Oracle and Microsoft did cooperate recently on Azure, and announced a rather big partnership on cloud. Here's a press release from the Microsoft site:



    Cameron Purdy | Oracle

    (For the sake of full disclosure, I work at Oracle. The opinions  and  views expressed in this post are my own, and do not necessarily    reflect the opinions or views of my employer.)

  3. Solution complete...[ Go to top ]

    Indeed, a cloud provider wouldn't be a cloud provider at all if the complete Oracle stack wasn't supported, and indeed, Oracle and Microsoft have done a good job making sure the Oracle stack is fully supported, by both companies, on Azure. Oracle will no doubt be watching closely to ensure that Azul provides a high quality JVM implementation on which Java based software can run.

  4. Bad move...[ Go to top ]

    I think Microsoft really made the wrong choice here. In the article it is said that allowing a company that has Linux, not Windows, as their primary revenue generator would not be the smartest choice as a reason why OpenJDK (which has heavy RedHat backing) wasn't chosen, which doesn't make sense. Azul's own Zing product specifications only state Linux compatibility...

    Microsoft would have been better off choosing Oracle as their strategic partner for supporting Java on Azure. It's the same mistake Apple made. As of today, Azul still doesn't have a Java 7 offering, which they'll probably have to build off OpenJDK 7 (as their current Zing product only supports Java 6). Time will tell how long this will take, but in the meanwhile other cloud providers already have Java 7 (and by the time Azure supports Java, probably Java 8) support.

  5. Interesting point...[ Go to top ]

    You have a very interesting point with regards to the Zing support for Linux, something I hadn't considered at the time of writing. And indeed, the Azul offering will indeed be based off of the OpenJDK. They're not building a JVM from scratch.

    I had heard that Oracle's licensing was a tad confusing in the cloud, but I didn't want to spread FUD in the article stepping into waters that I wasn't completely clear about. But I got the impression that was a concern at some level. There is something very clean about using Azul, a company that does not have their own enterprise stack.