Hace unos meses, aprovechando el tiempo libre para aprender un poquillo sobre el Cloud Computing interactúar un poco con las PaaS y esas cosas, empecé a montar una aplicación web (idealmente tendría su imagen para android) hasta que empecé a tener menos tiempo o cambiaron mis prioridades.
Al final quedó en esto: http://usosmeweb.appspot.com
Voy a dividir esta esta entrada en dos: Para qué podría valer (tal y como está actualmente) y cómo está estructurada técnicamente.
Para qué vale
Puedes loguearte en usosmeweb a través de tu cuenta de Facebook (ten en cuenta que te logueas sobre la plataforma de Facebook, así que yo no voy a conocer tú contraseña, simplemente Facebook me dirá si te has logueado correctamente o no. De hecho, le pido la mínima información al servicio) o si lo prefieres, proporcionando un nombre de usuario y una cuenta de correo a la que enviaré un correo de confirmación de la cuenta.
Una vez logueado, podrás acceder a las opciones del menú. Actualmente están activas las siguientes:
- Alertas
- Públicas: Puedes ver los avisos que han creado los usuarios. Pulsando el botón "Detalle" puedes ver los comentarios asociados o añadir nuevos, como si fuese un foro. Podrías crear un aviso para informar sobre algún evento o simplemente para hacer una quedada para ir en bici :). Recomiendo encarecidamente no escribir datos especialmente sensibles.
- Crear/Revisar: Desde aquí podrás crear nuevas alertas o revisar las que has creado. Para crear una alerta, simplemente debes decribirla, seleccionar el nivel de urgencia, el tipo de actividad y la privacidad (si sólo quieres que la vean tus amigos, colegas, tu familia o si es pública). También podrás "cancelar" una alerta que hayas creado. Cuando la canceles aparecerá tachada.
- Recibidas: Desde aquí podrás consultar las alertas "privadas". Es decir, si eres amigo de otro usuario y ese usuario ha creado una alerta que sólo pueden verla sus amigos, tú la verás, pero no será pública.
- Mi Gente
- Podrás decidir y ver a quién sigues y quien te sigue. Al estilo Facebook, pero mucho más simplificado. Tú decides que grupo de gente puede ver tus alertas.
- Mi cuenta
- Configuración: Para cambiar tu avatar/imagen de usuario. Sólo permito imágenes pequeñas, porque la cuota que me facilitan no es demasiado grande :)
Tardará en cargar un ratillo si el servidor tiene que "levantar" la instancia. He metido algún error para comprobar la redirección a la página genérica de errores. Como actualmente no la estoy manteniendo, en cuanto Google vuelva a cambiar librerías de GAE, fallará estrepitosamente y en ese momento eliminaré el enlace.
Estructura técnica
- PaaS: Google App Engine- Cliente: JSF (PrimeFaces), CSS, HTML, JS
- Servidor: Spring, DataNucleus, JDO
- Construcción: Eclipse, Maven, Plugin para GAE
- Cacheo en servidor de imágenes y páginas estáticas
- Integración con API de Facebook para autenticación
- Control de versiones: Mercurial
Después de investigar otro poco las plataformas que ofrecían servidores, bases de datos y otros servicios en la nube y tras probar Openshift y Google App Engine (con los que espero sacar una comparativa algún día), posteriormente he montado, en un día malo de estos que vienen en verano, una aplicación con la siguiente arquitectura para CloudBees:
Cliente: Wicket y HTML5
Servidor: JEE5 (en esta versión los EJBs y todo lo demás tiene mejor pinta y es un calco de Spring)
Base de datos: MySQL
Construcción: Maven
Servidor de aplicaciones: JBoss 7.1
Tengo los cimientos montados (aunque no son visibles) y simplemente he dejado una pequeña chorrada para probar el DnD (Drag And Drop) de HTML5. Lo cierto es que tiene bastante buena pinta, aunque como siempre, mientras no paguemos, nuestras pruebas estarán bastante limitadas, en este caso por la cuota de espacio de BD que nos proporciona CloudBees, por ejemplo.
No hay comentarios:
Publicar un comentario