lunes, 29 de abril de 2013

Configuración del App Engine

Leave a Comment
Hay tres parámetros básicos que podemos usar para que el App Engine se ajuste a nuestras necesidades. Los valores que toman por defecto son bastante aceptables, pero para exprimir hasta el último ciclo de la plataforma tendremos que modificarlos.

Lo primero que tendremos que hacer es entrar en la consola de administración, que está situada en appengine.google.com, y ahí seleccionaremos nuestra aplicación. En el menú lateral, bajo la sección ‘Administration’ encontraremos la opción ‘Application Settings’, una vez dentro bajaremos hasta ‘Performance’, aquí es donde haremos todos nuestros cambios.

Tipo de procesador

La primera opción que podemos configurar es ‘Frontend Instance Class’ donde podemos elegir entre cuatro opciones diferentes (F1, F2, F4 y F4_1G), que se diferencian en la velocidad del procesador y la cantidad de memoria que tiene disponible. Por defecto está seleccionada la maquina mas sencilla, la F1, que nos ofrece un procesador a 600MHz y 128MB de RAM.



Si nuestro objetivo es reducir costes esta opción la dejaremos tal y como esta, pues cuanto mejor sea la máquina seleccionada, más nos costarán las horas que esté funcionando. Cada hora que tengamos una F2 funcionando nos cuesta el doble que con una F1, y la F4 cuesta el cuádruple.


Estancias en espera


La opción ‘Max Idle Instances’ nos permite determinar el número máximo de instancias de la máquina que tiene que haber en espera en cualquier momento. Estas instancias están preparadas arrancar inmediatamente en el momento en que las instancias que se están ejecutando tengan mucha carga.



Por defecto se pone en automático, de forma que arranca y deja en espera instancias cuando empieza a aumentar el tráfico, y cuando no hay deja solo una. Un valor alto hará que nuestra aplicación responda mejor durante momentos de mucha carga, pero aumentará los costes. Si queremos reducir costes tendremos que darle un valor pequeño. Hay que tener en cuenta que si tenemos un pico de actividad con pocas instancias en espera es posible que los usuarios noten retardos en las respuestas.


Tiempo de espera

Esta opción determina cuánto tiene que aguantar una petición a que se libere una instancia en ejecución antes de despertar una que esté en espera. Por defecto todas las peticiones esperan 10ms como mínimo.


Podemos aumentar este valor, de forma que si una instancia está cargada de trabajo y llega una nueva petición este se quede en espera a que se aligere la carga. Un valor pequeño hará que los usuarios experiencien menos latencia, pero puede aumentar los costes al arrancar nuevas instancias, mientras que un valor alto mantendrá a los usuarios en espera durante más tiempo, pero reducirá los costes ya que, por lo general, arrancará menos instancias cuando hay mucha carga.

Como hemos visto, el App Engine nos ofrece varias alternativas para reducir el coste de nuestra aplicación, pero hay que tener en cuenta las consecuencias, y saber que es lo que nos hace falta ¿Velocidad de respuesta o costes reducidos?

0 comentarios:

Publicar un comentario en la entrada