When Salesforce.com purchased Heroku at the end of 2010, it was obvious that the two companies would cross-pollinate. Two years later, that pollination has born enterprise-ready fruit for the PaaS company that began as a quick and easy way to host Ruby applications. Today, Heroku announced a bevy of new services and product offerings that amount to a US$1,000 per-month, per-application hosting plan for enterprise Java users.
Jesper Joergensen, senior director of product management at Heroku, said that there were a few major needs enterprises had that, as a startup-focused PaaS, Heroku didn’t quite understand. He said that Salesforce’s biggest change for Heroku after the acquisition was to offer the company a fresh focus on enterprise users.
Oren Teich, COO of Heroku, said that this is when “we realized there are two things we needed to provide to enterprises. One was polyglot: They all want multi-language support. But at the same time, there’s a real need for what I call idiomatic support of a language. The way you look at a Ruby developer is different than the way you look at a Java developer. A Ruby developer is probably on a Mac, loves the command line, and uses no IDE. A Java developer is probably on Windows, uses Eclipse, and doesn’t want a command line. It’s important that you go deep into a language and understand the users.”
Joergensen comes from a Java background, and he joined the Heroku team from Salesforce proper shortly after the acquisition. Before Salesforce, he worked at BEA Systems. As such, Joergensen understands that traditional enterprise Java environment.
“We’ve been going into these enterprises that Salesforce is already in, and listening to them, and trying to find out where the barriers are,” he said. “Java very much defines, today, how enterprises look at what it takes to deploy a Web application. They want to move to the cloud, but what does that deployment look like in the cloud? There’s been a barrier there because cloud infrastructure doesn’t look like what we have on premise. There’s always a set of standard components that come with a Java application. There’s a SQL database, a caching tier, load balancing, a container, and scaling sessions is a classic problem from an infrastructure perspective.”
To that end, Heroku has addressed all of these aspects of the common enterprise Java environment. The Heroku Enterprise for Java offering includes a PostgreSQL database with scalable access. Available JVMs are both of the open source variety, from OpenJDK 6 and 7. Joergensen said that OpenJDK 8 can also be used.
Perhaps more significantly, the Heroku Enterprise for Java offering also includes staging and development areas for testing and preparing applications. Joergensen said that this comes from Heroku’s attempts to understand why enterprises are using clouds in the first place.
“What is it they’re really looking for by moving to the cloud?” asked Joergensen. “They’re not doing it just for fun. They’re hoping to accomplish agility. There’re capabilities built into PaaS that can make you agile, but it doesn’t make you agile by itself. So we had to help enterprises get set up for continuous integration and to deploy daily, or multiple times in a day. So we had to automate the deployment pipeline.”
The Heroku Enterprise for Java platform includes around 10 million requests per application per month, and also costs a flat $1,000 per month per application. Joergensen said that the request limit was chosen as the method of restriction because enterprises are used to dealing with requests as a measurement.
As for the future of Java and Heroku, Joergensen said that there are no current plans to join the JCP or contribute to the OpenJDK yet. Instead, the company has released an Eclipse plug-in for automating deployment to its PaaS.
“Our background is open source,” said Joergensen. “Our belief is that open source provides innovation at the pace you need. The JCP works slightly differently. If those two approach each other more, that would increase the likeliness that we would contribute.”