Maricela Ocaña
Programación Paralela y Distribuida
Programación Paralela y Distribuida
Programación Google App Engine con Python
Google App Engine nos permite
publicar aplicaciones web en línea sin necesidad de preocuparnos por la parte
de la infraestructura y con un enfoque 100% en la construcción de nuestra
aplicación y en la posibilidad de correrla directamente sobre la
infraestructura de Google, es decir, la que Google usa para sus propios
productos esto garantiza un mejor rendimiento de la aplicación.
Para el almacenamiento de datos
tendremos dos posibilidades en casi cualquier lenguaje en el que estemos
desarrollando: Cloud Datastore y Cloud SQL.
Cloud Datastore es una base de
datos NoSQL ideada como la opción de almacenamiento principal a la hora de que
corremos aplicaciones en App Engine.
Cloud SQL es una base de datos
MySQL que corre en la nube de Google y tiene todas las características de cualquier
base MySQL, entre otras.
Características
GAE soporta de manera oficial los lenguajes de
programación Python y Java de manera estable y en modo de beta testing en
lenguaje de programación Go creado por ellos mismos. Al soportar
Java, es posible además utilizar cualquier lenguaje JVM o lo que es lo mismo, cualquier lenguaje que pueda
ejecutarse sobre una máquina virtual de Java, aunque eso sí, con serias
limitaciones. Entre dichos lenguajes se encuentran:
- Groovy
- JRuby
- Scala
- 4PHP
- Clojure
- Perl
Pero sin duda Python es el lenguaje mejor
soportado y con
mayor robustez por parte del App Engine.
Para
utilizar Google App Engine como tu propia red de entrega de contenidos (CDN)
personal necesitas instalar algunas cosas en tu computadora y editar unos
archivos de configuración. Todo este trabajo se realiza una sola vez y luego lo
que necesitas es correr un simple programa para subir los archivos a Google.
Los
scripts que tienes que descargar solo están disponibles para Windows únicamente
si cuentas con otro sistema operativo deberás crearlos para que realicen las
mismas funciones, el scrip que tienes que descargar es el siguiente:
deploy_digitalistic_cdn.bat
Si ya cuentas con lo anterior sigue los siguientes pasos.
- Necesitas descargar e instalar Python en tu computadora. Si estas corriendo Mac o Linux, es muy probable que ya cuentes con Python instalado, así que puedes saltar este paso. Es recomendable descargar la Python 2.5 en adelante debido a que con las versiones 3 presenta algunos problemas.
- Descarga el SDK del motor de Google APP desde http://code.google.com/appengine/downloads.html e instalo. Durante la instalación del SDK va a revisar que tengas instalado Python o no, así que si tienes algún problema con la instalación de Python lo sabrás en este paso. El Google App Engine SDK es necesario para escribir y subir aplicaciones a Google. Solo utiliza las opciones ya establecidas cuando instales el SDK.
- Regístrate para el Google App Engine en appengine.google.com. Para esto crear una cuenta de Google.
- Una vez que hayas ingresado al servicio, crear una aplicación, así que pulsa el botón de “Create an application” y dale a la aplicación un nombre .Este nombre tiene que ser único dentro de todas las aplicaciones de usuarios, así que puedes tardar un rato en encontrar un nombre único. Guarda la nueva aplicación. Luego de que hayas creado esta primera aplicación, necesitas especificar tu número de teléfono. Google te enviará un mensaje de texto SMS con un código para ingresar al sitio. Esto confirma que eres el dueño de la cuenta de Google App Engine.
- Descarga el archivo http://nombredeaplicacion.appspot.com/files/digitalisticcdn.zip (alojado en mi CDN privado!) y descomprímelo en tu disco duro. Si quieres puedes cambiarle el nombre del directorio de “nombre de aplicación” al nombre que quieras, por ejemplo el de tu propia aplicación. No importa realmente y solo te facilita el mantener un registro para el futuro.
- Utiliza un
editor de texto para editar el archivo
app.yaml
que se encuentra en el directorio de “nombre de aplicación”. Cambia “application: nombre de aplicación” a “application:el identificador de tu aplicación” y guarda el archivo. Esto le dirá a Google App Engine que aplicación debe utilizar para cargar archivos. - Ahora es tiempo de agregar todas las imágenes, hojas de estilo, archivos, vídeos, etc. que quieras subir a Googleen los folders de “nombre de aplicación”. Incluye las imágenes en el folder /images, etc. Puedes crear cualquier número de subfolders dentro de imágenes, archivos, hojas de estilo, etc. Puedes agregar más archivos en cualquier momento, así que si sólo quieres configurar la aplicación para que funcione puedes saltar este pasó. Ya existe una imagen en el folder de /images para que puedas comprobar que está funcionando como debería.
- Descarga http:/nombredeaplicación.appspot.com/files/deploy_digitalistic_cdn.bat y edítalo con un editor de texto. Este archivo debe apuntar a tu instalación de Python, tu instalación de Google App Engine y tu directorio “nombre de aplicación”. Si has instalado Google App Engine SDK en el directorio original y Python en C:/Program Files/ entonces no tienes que preocuparte por esta configuración. Solo cambia la última parte del archivo para apuntarlo a tu directorio de “nombre de aplicación”. Ten en cuenta que todas las rutas que tienen espacios tienen que estar encerradas entre comillas.
- Doble click en el archivo recientemente actualizado deploy_digitalist_cdn.bat para subir todos los archivos dentro del directorio “nombre de aplicación” hacia Google. La primera vez que hagas esto deberás especificar tu usuario y password de Google.
- Ahora ya tienes tu propio CDN privado! Ve a (“nombre de aplicación”).appspot.com/images/ninja.gif para ver si funciona.

No hay comentarios:
Publicar un comentario