Cómo se administran las instancias

Las instancias son las unidades de procesamiento que App Engine usa para escalar tu aplicación automáticamente. En cualquier momento, tu aplicación se puede ejecutar en una o varias instancias, y las solicitudes se extienden por todas estas instancias.

Tus instancias con escalamiento básico y manual deben ejecutarse indefinidamente, pero existe garantía de tiempo de actividad. Las fallas de hardware o software que generan la finalización temprana o los reinicios frecuentes pueden ocurrir de improvisto y resolverlas puede llevar mucho tiempo.

Todas las instancias flexibles se reinician cada semana. Durante los reinicios, las actualizaciones que son críticas y compatibles con versiones anteriores se implementan automáticamente en el sistema operativo subyacente. La imagen de tu aplicación permanecerá igual durante los reinicios.

Verificación de estado

App Engine envía solicitudes de verificación de estado periódicas para confirmar que una instancia se implementó correctamente y comprobar que una instancia en ejecución se mantiene en estado de verificación. Debe haber una respuesta para cada verificación de estado en un intervalo de tiempo específico. Una instancia está en mal estado cuando no responde a una cantidad específica de solicitudes consecutivas de verificación de estado. Una instancia en mal estado no recibirá ninguna solicitud de clientes, pero sí recibirá verificaciones de estado. Una instancia en mal estado se reiniciará si sigue sin responder a una cantidad predeterminada de solicitudes consecutivas de verificación de estado.

Existen dos tipos de verificaciones de estado: de actualización y heredadas. Las solicitudes de verificación de estado actualizadas se habilitan de forma predeterminada y tienen valores de umbral predeterminados. Para personalizar las verificaciones de estado, agrega una sección de verificaciones de estado opcional al archivo app.yaml de tu aplicación. También puedes inhabilitar por completo las verificaciones de estado.

Cualquiera que sea el tipo de verificación de estado que decidas usar, una aplicación en buen estado responderá con un código de estado HTTP de 200.

Supervisa el uso de recursos

La página Instancias de GCP Console te permite visualizar cómo funcionan tus instancias. Puedes ver el uso de la memoria y la CPU de cada instancia, el tiempo de actividad, la cantidad de solicitudes y otras estadísticas. También puedes iniciar de manera manual el proceso de cierre de cualquier instancia.

Ubicación de las instancias

Las instancias se ubican automáticamente por región geográfica, según la configuración del proyecto.

Escala instancias

Mientras se ejecuta una aplicación, las solicitudes nuevas se enrutan hacia instancias nuevas o existentes de las versiones o los servicios que correspondan. El tipo de escalamiento de un servicio o una versión controla la manera en que se crean las instancias. La configuración del escalamiento se realiza en el archivo app.yaml. Existen dos tipos de escalamiento:

Escalamiento manual
Un servicio de escalamiento manual usa instancias residentes que ejecutan de manera continua la cantidad de instancias específicas, independientemente del nivel de carga. Esto permite tareas como inicializaciones complejas y aplicaciones que se basan en el estado de la memoria en el transcurso del tiempo.
Ajuste de escala automático
Los servicios de ajuste de escala automático usan instancias dinámicas que se crean a partir del porcentaje de solicitudes, las latencias de respuestas y otras métricas de la aplicación. Sin embargo, si especificas una cantidad de instancias inactivas mínimas, esa cantidad específica de instancias se ejecuta como instancias residentes, mientras que cualquier otra instancia adicional será dinámica.