BT

Java EE PaaS Providers

by Charles Humble on Sep 21, 2011 |

At this year's VMworld, Red Hat conducted a survey of over 1,200 attendees on their cloud plans. One of the questions was, "What primary development framework are you planning to use in the cloud?" The results were as follows:

  • Java EE 32%
  • .NET 29%
  • PHP 14%
  • Perl 8%
  • Python 6%
  • Spring 6%
  • Ruby/Rails 5%

Whilst the survey doesn't allow responders to distinguish between "Java with a framework other than Spring", and "Java EE", and the results should therefore be treated with some scepticism, they do chime with other research. Many enterprises have made a considerable investment in Java - a recent Forrester survey suggested that around 64% of businesses use the platform - and a Java EE PaaS would provide a straightforward way for these enterprises to transition their existing Java EE applications to the cloud.

However Java EE compliant PaaS products are thin on the ground. Red Hat's OpenShift, which follows Red Hat's acquisition of Makara in November of 2010, is one of the first. The product is currently in free developer preview, running on top of Amazon's EC2. It comes in two versions – Express and Flex. Express is a free multi-tenant offering that supports the Java EE 6 Web Profile. The Flex platform offers the dedicated application servers (JBoss, Tomcat) shell access, and dedicated hosting. Since JBoss AS 7 isn't certified against Java EE 6, the product doesn't quite support the full Java EE 6 standard, but it will do once JBoss AS 7.1 is released.

One of the problems for vendors wishing to offer a Java EE PaaS is that the platform has substantial memory demands, an issue which Oracle is looking to address through the Jigsaw modularity solution, and other changes planned for Java EE 7 and SE 8. However, many Java EE vendors have introduced modularity to their application servers based on OSGi, allowing them to circumvent the problem to a certain extent. Issac Roth, formerly of Makara and now PaaS Master at Red Hat, told InfoQ

The issue is that the JVM is not really set up to run multi-tenant, and to get it that way would require a very fancy implementation of the JVM, or ideally some adjustments to the language spec. We are indeed running Java EE in a multi-tenant environment which gives us terrific density for JEE workloads. We've done this by creating the slimmest Java container out there - JBoss AS 7 - and using the OS-level virtualisation in Red Hat Enterprise Linux. 

Since some of the code in OpenShift has come through acquisition, Red Hat hasn't yet released it as open source, though it has signaled its intention to do so. The company is also yet to publish pricing information, though Roth told us that it expects it to be in line with other providers.

Roth also told us that the company is actively involved in the Java EE 7 expert groups, and will be using some of the knowledge it acquires from running OpenShift to feed into the Java EE 7 design process.

Another firm with plans to support Java EE 6 using JBoss is Platform as a Service startup CloudBees. At present CloudBees, which launched in November 2010, includes DEV@cloud, a service that lets developers take their build and test environments to the cloud, and RUN@cloud, which lets teams deploy these apps to production on the cloud.

The RUN@cloud product is based on Tomcat, with a JBoss version announced but not yet released. It is offered both hosted atop Amazon EC2, and is working on a private offering that lets users run the PaaS on-premises.

Whilst the PaaS space is still quite young and fragmented, there are some obvious front runners, with firms like Amazon, Google, and Microsoft already well established. Thus any company wishing to enter the space needs a strong market differentiator.

For CloudBees one key differentiator is continuous delivery. Last year the firm, led by former JBoss CTO Sacha Labourey, acquired InfraDNA, and its founder Kohsuke Kawaguchi who created Hudson and now leads the Jenkins fork of the Hudson CI server. CloudBees' first PaaS product was Jenkins as a Service under its DEV@cloud branding. DEV@cloud allows developers to build their code using Git, Subversion, and/or Maven, test it using Jenkins, and then deploy it into the RUN@cloud service. Labourey told InfoQ

We care about the complete application lifecycle. You will see a bunch of PaaSs out there which define a PaaS as being "how to deploy an existing application into the cloud". So there is a focus on this production/runtime aspect only. We think that is just part of the picture, and that for the cloud to make sense you need to provide a solution that helps developers along the entire application lifecycle, from development to production.

A second differentiator is the firm's concentration on the JVM. Whilst many PaaS vendors are aiming to be language agnostic, CloudBees solely supports the JVM. Of course the JVM is polyglot by its nature, and CloudBees applications can be written in Java, Scala, Clojure or any other JVM-based language, but this concentration, the firm argues, allows it to have greater depth of coverage for developers targeting the JVM.

Pricing for the JBoss product is yet to be announced, but is expected to be around 50% more then the existing Tomcat offerings.

CloudBees employees around 30 people. It is VC funded, most recently raising $10.5 million in Series B funding. The round was led by Lightspeed Venture Partners and joined by Matrix Partners, the latter of whom also provided the Series A funding.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Amazon PaaS by Chris Edge-Alexander

Amazon Web Services Elastic Beanstalk is an existing PaaS platform for Java:

aws.amazon.com/elasticbeanstalk/

VMWare PaaS by Chris Edge-Alexander

VMWare's own Cloud Foundry is also an existing PaaS platform for Java:

www.cloudfoundry.com/

It is also built on top of EC2 I believe.

Heroku PaaS by Chris Edge-Alexander

Heroku have recently added Java support to their PaaS platform:

devcenter.heroku.com/articles/java

Google PaaS by Chris Edge-Alexander

Then of course you have the Google Application Engine PaaS that supports Java:

code.google.com/appengine/

I only mention these links for completeness as the article does not contain them.

Re: Google PaaS by Charles Humble

HI Chris,
True. There are others too, including MS Azure. But none of these are Java EE PaaS providers, which is what the article was concentrating on, hence why I didn't include them!
Charles

non-java ee by Chen Wang

Chris, they are mostly Java Servlet/Web containers with the exception of GAE which doesn't even claim to support any spec. The only Java EE PaaS at the moment is OpenShift as mentioned in the article I believe. But I personally would pay more attention to services such as CloudFoundry where there is an infrastructure software company (VMWare) and an application framework/stack company (SpringSource) behind. Being Java EE compliant is probably not relevant to many people as long as there is a JVM and web container on offer.

Jelastic PaaS by Ruslan Synytskyy

Jelastic (Java Elastic Cloud) is the next generation of Java hosting platforms which can run and scale any Java application with no code changes required.

jelastic.com

You can mix and match your software stacks. Select from Tomcat, GlasshFish, Jetty application servers and SQL (MariaDB, PostgreSQL, MySQL) or NoSQL (MongoDB, CouchDB) databases. It's easy to use.

Re: Google PaaS by Chris Edge-Alexander

Azure and Elastic Beanstalk are certainly Java EE, both running in Tomcat 6 containers and both being relatively simple app uploads.

I take yours and Chen's point with GAE and Heroku (I succumbed to a frenzy of locating PaaS providers).

Re: Google PaaS by William H

Chris,
The servlet spec is part of Java EE, but a servlet container like Tomcat doesn't qualify as a Java EE compliant container. There's a lot more to even the basic web profile than just servlets.

Re: VMWare PaaS by Ryan Slobojan

VMWare's own Cloud Foundry is also an existing PaaS platform for Java:

www.cloudfoundry.com/

It is also built on top of EC2 I believe.


Not true - you can target a CloudFoundry VM to run on several types of VMs, including EC2 instances or vSphere instances, however the current public CloudFoundry is not based off of EC2. Lots of details at the CloudFoundry FAQ, but basically it's open source and I see it as a VM which provides a PaaS layer over top of an underlying infrastructure VM (just as the JVM provides a higher abstraction layer over top of the underlying x86/Sparc/x64/ARM Windows/Linux/Mac machine).

Re: VMWare PaaS by Eberhard Wolff

VMWare's own Cloud Foundry is also an existing PaaS platform for Java:

www.cloudfoundry.com/

It is also built on top of EC2 I believe.


It runs on their own infrastructure, not EC2. There is a pretty cool way to run in on Ubuntu on EC2: cloud.ubuntu.com/2011/09/from-zero-to-drawbridg... and Ubuntu 11.10 will include Cloud Foundry. Might be a nice platform for private PaaS.

Re: non-java ee by Sacha Labourey

Chen,

VMW is not the only infra+app company, RHT is as well. In any case, I fail to see how this is an advantage (both of those offering are stil in beta or developer preview FYI).

As for Java EE, I know it is not super-hype to step up and promote Java EE, but EE6 and its web-profile have been extremely well received by Java developers, probably because it is one of the less complex Java programming environment for server side application development.

Cheers,


Sacha Labourey
CloudBees

List of PaaS providers for Java applications by tribhuwan negi

Compiled a list of PaaS providers for Java development and deployments is here.
intelligence.tribhuwannegi.com/2011/09/platform...

Re: non-java ee by Rajesh Ramchandani

Hi Chris - You may want to take a look at CumuLogic (cumulogic.com), very first enterprise-ready Java PaaS founded by former Sun Microsystems team where James Gosling is personally involved as an adviser. CumuLogic has flexibility to use multiple containers and runs on multiple clouds, such as Vmware vSphere, Openstack and Citrix cloud.com. We are in fact the first enterprise PaaS for private / Federated clouds. Please feel free to drop us a line to learn more. Thanks

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

14 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT