Earlier this month, Google announced and launched as a preview release a service called Google App Engine. I think that by all means, this service looks great, as it scales your application automatically when demand increases, is fault-tolerant by clustering your application in a crazy scheme of active-active servers, and has a distributed data storage for saving all your data (limited to 500MB per application for the free preview account.)
Google provides a complete runtime for their platform, which allows them to create this automagically scaling application scheme on one hand, but limits your language capabilities on the other. For example, direct thread-spawning and I/O operations cannot be used within your application. In their announcement it was made clear that Google didn’t create this service as a computational grid, so I don’t expect it to be allowed any time soon as it implies one; on the other hand, I expect Google to come up with a computational grid as a separate service sometime soon regardless, because it’s (a) really cool and (b) competes with Amazon’s EC2, just like their datastore service does with S3.
Now to the sad part about the GAE, for those of you haven’t heard about it yet: It doesn’t support Java, yet. The language supported by the runtime at the moment is Python – so if you want to use the engine, better start learning a new language. Fear not, though. With Google pushing Java in Android and Google Web Toolkit, I don’t see how they’ll miss Java for this platform. In addition, integrated with GWT this could give the development API a huge boost. Java can, when required, be implemented to not support threads; in addition, there are several JSRs in their final drafts that might help Google achieve that goal such as the isolates JSR for sharing a Java runtime between different Java applications, and the java resource management API which should allow reuse of resources (database connections, for example).
What we need now is for people to vote with their feet, sort of speak: Show Google that the GAE is extremely interesting, but also make sure they know we want Java there as well!
Liked Chaotic Java? It's free! But maybe you can
April 17th, 2008 at 10:37 am
Google seems to work as lots of separate independent entities. For example Google Gears was not supported by most of Google’s websites for ages; it still isn’t supported by Google Spreadsheets, for example. So I’m not sure if just because other Google initiatives use Java, that’ll necessarily mean that GAE will support Java soon.
However, having said that, independent of other Google initiatives, if they are serious about GAE, they will want to support other languages than Python, and Java is sure a candidate.