Google App Engine vs Jelastic

As Jelastic grows faster and faster, more and more people are hearing about us and they want to know how we compare to other PaaS available out there. We already did a comparison of Heroku vs Jelastic a little while back, but people wanted more. So here it is.

Why Does This Matter?

If you are already using Jelastic, you most likely don’t see any reason for this post; and I would agree. That said, there are others out there that aren’t sold, convinced, or are sitting on the fence wondering about whether or not making the switch is worth it. Hopefully, this short post will help you understand the biggest differentiators between Jelastic and Google App Engine.

The Big Picture

One of the biggest issues that you have if you want to use Google App Engine is that you can only get it from Google. So, if for some reason the price goes up (wait, that already happened…) or the service quality drops, you really don’t have anywhere to go.

Another huge issue is compatibility. If you are used to using open-source, standard software stacks—the way pretty much everything is going (I’ll talk about this soon when I write about what I learned at the OpenCF Summit)—then you are also out of luck. Most of the major PaaS out there, including Google App Engine, use custom application servers

All that aside, there is a reason that a lot of people still use Google App Engine. It is a good product. But, after reading this comparison, I think that you will see that Jelastic isn’t just good, it is awesome.

Details : The Nitty Gritty

For the sake of brevity, I will keep this list to 10 points and I won’t go over the above-mentioned points about availability and lack of standard software stacks.

Relearning: with GAE you have to do a bit of learning. First you have to learn about their app engine and then you have to make sure that code your app the right way so that it works with the engine.

Code changes: unless you coded your app with GAE in mind, you are going to have to do a bit of recoding, or a lot. This really all depends on your app, but it seems to me that any code changes should be for app functionality and not because the platform demands it.

Portability: code that you write within GAE can’t be ported anywhere else, not even Heroku or DotCloud. It’s special—in a bad way.

Support: very limited customer support and the documentation is woefully inadequate. Though the App Engine Google Groups do answer a lot of questions, there are still a ton of them in there that are not answered.

Errors: if your app doesn’t load within a minute, be prepared for a 500 error from GAE. You didn’t know about that? That’s because it’s not really written anywhere. (it is buried in the forums)

No custom domains. You can’t use HTTPS with your own domain. You have to run everything through yourname.appspot.com. #lame

No ability to do a big update. You have to use map reduce.

No streaming and no long-term connections. Not sure why they did this, but it is counter productive considering that streaming is a huge part of a large part of the web.

If you want to work with Twitter or Facebook, you will probably have to get intermediate servers because every GET and POST from the server to the other is aborted if it does not finish in under 5 seconds. You can change this to 10, but even then, all you are doing is duplicating work and doubling the amount of time it takes for things to get done.

You app is in Google’s hands… God forbid something happened on Google’s end: you would be at the mercy of Google. And don’t bother trying to reach someone at Google to ask for help (see above point about support).

You can’t JOIN two tables: more complexity in your source code in order to make queries.

Databases are really slow. It gets complicated fast here. If you want to know more, read up on how to separate tables using inheritance so you can do searches within. Then get the key. Then obtain its parent so that you can avoid the crazy things that happen if you don’t.

Your development environment server is not the same as the one for production. So, you have to have some tests (you have to come up with these, manual or selenium) to run them against the Cloud: more money.

No access to the file system: more time wasted learning about and then working around this.

Throttling and quota issues: if you are calling third party APIs, you have to keep in mind that those IP’s are shared with other apps.

Youe Java instance might need to be rebooted if it hasn’t been…. Wait. I said I would keep it to 10 points and I am over that.

Summary

If you are okay with doing things Google’s way and putting up with all of the roadblocks in place to deploy your app to the Cloud using Google, then GAE is for you.

But if you want to deploy your apps to the Cloud the easy way, Jelastic is your answer.

Upload. Deploy. Enjoy.

Cheers!

30 Responses to “Google App Engine vs Jelastic”

  1. Long

    Totally agree. I used to work with GAE and I must say that GAE is pretty hard and time-consuming. Now I am doing my project with Jelastic, it’s just awesome!

    But There is one thing I must emphasis: GAE is very cheap and it offer some free quotas. This aspect is very important. Just imagine you are doing a start up, you want every user to pay for what they use, but before archive that goal, you will need some free quotas for visitors of your application. When users pay for your application, you will spend a portion of that amount for the platform. Of course, there is another way is to find an investigator. But that way is … harder, I think. Investigators do not always understand great ideas. So, don’t underrate developers who have only some small money in the pockets. They can make magic happen.

    Reply
  2. kpolo

    And how much does Jelastic cost per month? This is all moot until you guys publish your pricing.

    Reply
  3. Kai Wähner (@KaiWaehner)

    I agree to both, the blog post and the above comment. Though, the comparison with GAE is easy, because it has many (ugly) restrictions.

    You should also do a comparison with other PaaS solutions in the Java environment, e.g. JBoss OpenShift, CloudBees, CloudFoundry or Amazon Beanstalk.
    I would say that OpenShift is the hardest competitor to Jelastic, because it offers good JEE support. The others also have got some other aspects (some would say restrictions) which differ (AFAIK), e.g. CloudFoundry is Spring-based and Beanstalk only supports Tomcat.

    Best regards,
    Kai Wähner (Twitter: @KaiWaehner)

    Reply
  4. uzzal

    Agreed with Long, will jelastic provide any free quota like GAE does?

    Reply
  5. Jose Leon (@FlexJRL)

    Recien estoy usando GAE y lo unico que necesito hacer para subir mis proyectos es instalar su plugin por lo demas no es intrusivo me da diez aplicaciones por cuenta totalmente gratis y funciona para aplicaciones Grails. Ademas no era esta una comparación? solo hablan de GAE y no de Jelastic asumo que Jelastic tiene todos esos puntos que mencionas? Pueden ver mas sobre gae en mi blog en español
    Recently I’m using GAE and all you need to do to upload my project is to install your plugin is not so intrusive other ten applications I get totally free account and it works for Grails applications.

    Also was not this a comparison? only speak of GAE and not assume that Jelastic Jelastic has all those points you mentioned?

    Gae can see more on my blog in Spanish

    http://robertoleon.com.mx/blog/tag/gae

    Reply
  6. Jose Leon (@FlexJRL)

    Recently I’m using GAE and all you need to do to upload my project is to install your plugin is not so intrusive other ten applications I get totally free account and it works for Grails applications.

    Also was not this a comparison? only speak of GAE and not assume that Jelastic Jelastic has all those points you mentioned?

    Gae can see more on my blog in Spanish

    http://robertoleon.com.mx/blog/tag/gae

    Reply
  7. Jose Leon (@FlexJRL)

    Hola Judah seguro la idea es debatir y aprender amigo :)

    Reply
  8. Newsletter – February 29, 2012 « Jelastic — Rock-Solid Java in the Cloud, Java Server Hosting, Java Cloud Computing

    [...] hosting out there; so we decided to put it up against the biggest player in the game, Google.  Google App Engine vs Jelastic. Who do you think won? I’ll give you a hint: it wasn’t the guy with vendor lock-in, [...]

    Reply
  9. Onno Scheffers

    > Portability: code that you write within GAE can’t be ported anywhere else,
    > not even Heroku or DotCloud. It’s special—in a bad way.

    Not completely true. There are actually various solutions that will let you run your Google App Engine Apps on other cloud solutions. AppScale is probably the most well known one (http://appscale.cs.ucsb.edu/)

    > No custom domains. You can’t use HTTPS with your own domain. You have to
    > run everything through yourname.appspot.com. #lame

    Does this mean you have this functionality already? Because your documentation page “HTTPS (SSL)” still states: “Note that at the moment this functionality is only available for sites at *.jelastic.com and not your custom URLs. This additional functionality is in the works though.”

    Google have support for this already as a Trusted Tester Feature, meaning it is already being tested:
    http://code.google.com/appengine/docs/features.html#Trusted_Tester_Features.

    But I agree that jElastic is much easier to get into and porting applications to run on Google App Engine is indeed a lot of work.

    Reply
  10. Tushar

    I have use GAE(2apps in python,1 in java) ,but truely it works awesome unit free quota but after that Instance Hours are very costly especially for my social plugins(facebook and tweeter feed).In jelastic I like how we can customize and map reduce our large applications.I would recommend jelastic for larger and traditional apps while gae for small apps(virtually free)

    Reply
  11. Sandeep

    It looks good. But I was planning to host liferay which requires minimum 2 GB RAM :(

    Reply
  12. Java Application Deployment Platform Jelastic Raises $2 Million from Russian Venture Funds | TechCrunch

    [...] With Google App Engine or Heroku, one gets locked in, says Sotnikov, because the application code has to be written so that it works with one or the other. The only way out is to rewrite the application for another platform. For example, Google App Engine has its own custom app servers, and using them means reducing application compatibility. If the application developer is located outside of the US, using either service means hosting in the US, which leads to roadblocks such as compliance with the US Patriot Act. (See further comparison of Jelastic with Heroku on the Jelastic blog here, and with Google App Engine here.) [...]

    Reply
  13. Java Application Deployment Platform Jelastic Raises $2 Million from Russian Venture Funds | BoreroNews

    [...] With Google App Engine or Heroku, one gets locked in, says Sotnikov, because the application code has to be written so that it works with one or the other. The only way out is to rewrite the application for another platform. For example, Google App Engine has its own custom app servers, and using them means reducing application compatibility. If the application developer is located outside of the US, using either service means hosting in the US, which leads to roadblocks such as compliance with the US Patriot Act. (See further comparison of Jelastic with Heroku on the Jelastic blog here, and with Google App Engine here.) [...]

    Reply
  14. Ukrainian Java application deployment innovator Jelastic raises $2 million from Almaz Capital and Foresight Ventures

    [...] more technical comparison of Jelastic vs Google App Engine or Heroku visit Jelastic blog here and here. Amongst other alternatives, Amazon’s  AWS Elastic Beanstalk is apparently not going to be [...]

    Reply
  15. Java Application Deployment Platform Jelastic Raises $2 Million from Russian Venture Funds « DevelopersArena.com

    [...] With Google App Engine or Heroku, one gets locked in, says Sotnikov, because the application code has to be written so that it works with one or the other. The only way out is to rewrite the application for another platform. For example, Google App Engine has its own custom app servers, and using them means reducing application compatibility. If the application developer is located outside of the US, using either service means hosting in the US, which leads to roadblocks such as compliance with the US Patriot Act. (See further comparison of Jelastic with Heroku on the Jelastic blog here, and with Google App Engine here.) [...]

    Reply
  16. Java Application Deployment Platform Jelastic Raises $2 Million from Russian Venture Funds | E69.cz

    [...] With Google App Engine or Heroku, one gets sealed in, says Sotnikov, because the focus formula has to be combined so that it works with one or the other. The only way out is to rewrite the focus for another platform. For example, Google App Engine has the possess tradition app servers, and using them means shortening focus compatibility. If the focus developer is located outward of the US, using possibly use means hosting in the US, which leads to roadblocks such as correspondence with the US Patriot Act. (See serve comparison of Jelastic with Heroku on the Jelastic blog here, and with Google App Engine here.) [...]

    Reply
  17. Java Application Deployment Platform Jelastic Raises $2 Million from Russian Venture Funds | Technomania..

    [...] With Google App Engine or Heroku, one gets locked in, says Sotnikov, because the application code has to be written so that it works with one or the other. The only way out is to rewrite the application for another platform. For example, Google App Engine has its own custom app servers, and using them means reducing application compatibility. If the application developer is located outside of the US, using either service means hosting in the US, which leads to roadblocks such as compliance with the US Patriot Act. (See further comparison of Jelastic with Heroku on the Jelastic blog here, and with Google App Engine here.) [...]

    Reply
  18. Judah Johns

    Thanks for the comments, Ed. I get where you are coming from. In contrast to GAE, we are trying to make deploying Java applications easy. That is our goal: having all the functionality of a world class PaaS, while eliminating learning curves, lock-in and non-standard software stacks.

    Reply
  19. Java Application Deployment Platform Jelastic Raises $2 Million from Russian Venture Funds |

    [...] With Google App Engine or Heroku, one gets locked in, says Sotnikov, because the application code has to be written so that it works with one or the other. The only way out is to rewrite the application for another platform. For example, Google App Engine has its own custom app servers, and using them means reducing application compatibility. If the application developer is located outside of the US, using either service means hosting in the US, which leads to roadblocks such as compliance with the US Patriot Act. (See further comparison of Jelastic with Heroku on the Jelastic blog here, and with Google App Engine here.) [...]

    Reply
  20. AWS Elastic Beanstalk vs Jelastic

    [...] Platform as a Service applications on the market. A while back we did a comparison of Heroku and Google App Engine vs Jelastic, and today we’ll compare Jelastic to AWS Elastic [...]

    Reply
  21. Information Bites – “Jelastic Has the whole lot That web hosting companies want to provide PaaS”- Dmitry Sotnikov, Jelastic

    [...] if that's the case do the entire server setup and administration themselves; or choose systems like Google App Engine, Heroku and others and have to re-code their purposes to comply with the multiple obstacles they [...]

    Reply
  22. Interview at Daily Host News with Dmitry Sotnikov from Jelastic

    [...] and in that case do all of the server setup and administration themselves; or pick platforms like Google App Engine, Heroku and others and have to re-code their applications to comply with the multiple limitations [...]

    Reply

Leave a Reply