Java en Google App Engine

Google App EngineEl anuncio de soporte de Java en el Google App Engine ejemplifica las luces y las sombras de las plataformas como servicio dentro de lo que se ha venido denominando Cloud computing. Por un lado tenemos un movimiento razonable para facilitar el desembarco de muchas empresas que ya tienen aplicaciones empresariales en Java y, sobre todo, mucho “know how” alrededor de la tecnología de Sun y mucho invertido en el ecosistema Java. Además se beneficia de la integración con muchas herramientas diseñadas para desarrollar en Java, desde Eclipse hasta Ant.

Pero además de ser un movimiento razonable, muestra claramente como apostar por plataformas como servicio del tipo Google App Engine también tiene sus “peros”: un entorno en el que se te dan muchas cosas dadas, pero poco flexible y en el que todo está acotado y decidido previamente por la plataforma. En el anuncio dejan claro que no se soporta Java Enterprise Edition por completo, entre otras cosas porque debajo de App Engine no hay bases de datos relacionales, así que hay que olvidarse de JDBC o Hibernate, pero también de JMX, EJBs o de Struts. ¿Traducido para no desarrolladores? Un entorno que escala muy bien, a bajo coste, pero muy controlado para que no se “desmadre” basado sobre todo en librerías estándares, de las que también faltan algunas muy significativas.

En general, Google App Engine está todavía muy lejos de ser un producto maduro. Este soporte de Java puede atraer desarrolladores, sobre todo porque los hostings económicos que soporten Java escasean, pero difícilmente lo hará con empresas hasta que evolucione bastante. Como producto se sigue perfilando como un entorno muy controlado y limitado, lejos de la flexibilidad – y mayor complejidad – de las soluciones tipo “infraestructura como servicio” que ofrecen los web services de Amazon.

Para solicitar entrar en el beta test, appengine.google.com. Qué entra y qué no, en el grupo oficial. También lo comenta Nube blog.

2 comentarios en “Java en Google App Engine

  1. En verdad el uso de AppEngine en mi trabajo de grado ha sido uno de los mayores dolores de cabeza, primero por las restricciones en cuanto busquedas, los cambios que tendrian que hacerse al modelo y el uso de Lucene para tener ‘full search support’ etc. Luego las restricciones y/o complicaciones para integracion con JAAS (no podía usar autentificacion mediante cuentas de google), como no logré configurarlo entonces usé ‘security-filter’ y otro lio con los ‘servlet filters’ ya que no capturaba algunas urls por su extensión .html. Luego de googlear buen tiempo encontré que la solución más fácil era cambiarle la extensión (ups que cosas) por .jsp para que pueda ser capturada por el filtro y cuando ya todo parecía solucionado, me di cuenta que al utilizar el ‘remember me’ generaba una excepción (error 500 por su puesto) porque sucede que el AppEngine tiene restricciones con el uso de la clase sun.misc.BASE64Encoder… Espero no chocar más con otras restricciones de este framework

Comments are closed.