středa 9. dubna 2008

Může Google App Engine vyřešit problém Java hostingu?

K dnešnímu postu mě inspiroval Rick Ross svým článkem Will Google App Engine Support Java? Can it?. Ale vezmeme to pěkně od začátku. Už jste slyšeli o nové službě Google App Engine? Je to jednoduché, představte si, že vezmete svoji aplikaci a deploynete ji na infrastrukturu Googlu. Tato služba má následující vlastnosti:

  • dynamic web serving, with full support for common web technologies
  • persistent storage with queries, sorting and transactions
  • automatic scaling and load balancing
  • APIs for authenticating users and sending email using Google Accounts
  • a fully featured local development environment that simulates Google App Engine on your computer

Má to malý háček, zatím jsou podporované pouze aplikace napsané v Pythonu. Každopádně Although Python is currently the only language supported by Google App Engine, we look forward to supporting more languages in the future.

Zpět k původnímu článku Ricka Rosse, ten vidí minimálně tři problémy s tím, aby Google App Engine mohl podporovat Javu. Samozřejmě těch problému je trochu více a to je důvodem proč je hosting Javy pěkný opruz. Otázka zní, může Google tyto problémy vyřešit?

Můj osobní názor je, že může. Google již v minulosti ukázal náklonnost k Jave a není tajemstvím, že Google Javu používá. Takže určité sympatie tu jsou. Problém Javy a hostingu je v tom, že by bylo potřeba netriviálně upravit JVM. Google již všem ukázal, že podobné "ohnutí" pro něj není problémem viz Případ Android.

Co by přinesla googlu podpora Javy například oproti .NET a nebo PHP respektive hovoří něco vůbec pro Javu? Nyní už jsme čistě v teorii spekulací, ale pokud se na to podíváme pragmaticky tak .NET by pro Google nebyl žádnou výhrou. Co do komplexnosti to bude přibližně stejné jako v případě Javy. Když k tomu připočteme, to že .NET spolehlivě běhá jenom na Windows, tak to je dostatečně diskreditující fakt, aby o jeho podpoře začal Google vůbec uvažovat.

PHP je na tom výrazně lépe co do komplexnosti a také lépe sedí do konceptu celé služby, která je mířená pro poskytování infrastrukturu webovým aplikacím. Pro Javu, v tomto případě by bylo lepší mluvit spíše o JVM, by snad mohlo hovořit to, že její podpora znamená i další jazyky jako Groovy či Ruby a další. Kdyby nic jiného tak by Google App Engine vybičovat Sun k nějaké větší aktivitě kolem problému hostingů Javy. Ale uznávám, že ze je to spíše přání otcem myšlenky...

Související články