ID de región
El REGION_ID
es un código abreviado que Google asigna en función de la región que selecciones al crear tu aplicación. El código no corresponde a un país o provincia, aunque algunos IDs de región pueden parecerse a los códigos de país y provincia que se usan habitualmente. En las aplicaciones creadas después de febrero del 2020, REGION_ID.r
se incluye en las URLs de App Engine. En las aplicaciones creadas antes de esa fecha, el ID de región es opcional en la URL.
Una aplicación de App Engine se compone de un único recurso de aplicación que consta de uno o varios servicios. Cada servicio se puede configurar para usar diferentes entornos de ejecución y para operar con diferentes ajustes de rendimiento. En cada servicio, se implementan versiones de ese servicio. Cada versión se ejecuta en una o varias instancias, en función del tráfico que hayas configurado para que gestione.
Componentes de una aplicación
Tu aplicación de App Engine se crea en tu Google Cloud proyecto cuando creas un recurso de aplicación. La aplicación de App Engine es un contenedor de nivel superior que incluye los recursos de servicio, versión e instancia que componen tu aplicación. Cuando creas tu aplicación de App Engine, todos tus recursos se crean en la región que elijas, incluido el código de tu aplicación, junto con una colección de ajustes, credenciales y metadatos de la aplicación. Consulta más información sobre los recursos de aplicaciones ( estándar | flexible ) y en qué regiones puedes crearlos.
Cada aplicación de App Engine incluye al menos un servicio, el servicio default
, que puede contener muchas versiones, en función del estado de facturación de tu aplicación.
Para obtener más información, consulta la sección Límites que se muestra más abajo.
En el siguiente diagrama se muestra la jerarquía de una aplicación de App Engine que se ejecuta con varios servicios. En este diagrama, la aplicación tiene dos servicios que contienen varias versiones, y dos de esas versiones se están ejecutando en varias instancias:
Otros servicios, como Datastore, se comparten en tu aplicación de App Engine. Para obtener más información, consulta "Estructurar servicios web" ( estándar | flexible ). Google Cloud
Servicios
Usa servicios en App Engine para dividir tus aplicaciones grandes en componentes lógicos que puedan compartir de forma segura las funciones de App Engine y comunicarse entre sí. Por lo general, los servicios de App Engine se comportan como microservicios. Por lo tanto, puedes ejecutar toda tu aplicación en un solo servicio o diseñar e implementar varios servicios para que se ejecuten como un conjunto de microservicios.
Por ejemplo, una aplicación que gestione las solicitudes de tus clientes puede incluir servicios independientes que se encarguen de diferentes tareas, como las siguientes:
- Solicitudes a la API desde dispositivos móviles
- Solicitudes internas de tipo administrativo
- Procesamiento backend, como las canalizaciones de facturación y el análisis de datos
Cada servicio de App Engine consta del código fuente de tu aplicación y de los archivos de configuración de App Engine correspondientes. El conjunto de archivos que despliega en un servicio representa una sola versión de ese servicio y cada vez que lo despliega, crea versiones adicionales en el mismo servicio.
Versiones
Tener varias versiones de tu aplicación en cada servicio te permite cambiar rápidamente entre diferentes versiones de esa aplicación para realizar restauraciones, pruebas u otros eventos temporales. Puedes dirigir todo el tráfico a una versión específica de tu aplicación mediante la migración de tráfico ( estándar | flexible ) o dirigirlo a varias versiones de tu aplicación mediante la división del tráfico ( estándar | flexible ).
Instancias
Las versiones de tus servicios se ejecutan en una o varias instancias. De forma predeterminada, App Engine escala tu aplicación para que se adapte a la carga. Tus aplicaciones aumentarán el número de instancias en ejecución para ofrecer un rendimiento constante o lo reducirán para minimizar las instancias inactivas y los costes. Para obtener más información sobre las instancias, consulta Cómo se gestionan las instancias ( estándar | flexible ).
En el entorno flexible de App Engine, las instancias se basan en recursos de Compute Engine. Algunos de los recursos que usan las instancias del entorno flexible de App Engine, como el disco, la CPU y la memoria, se tienen en cuenta para las cuotas de la API Compute Engine de tu proyecto. Para obtener más información sobre cómo usa App Engine los recursos de Compute Engine, consulta la descripción general del entorno flexible de App Engine.
Solicitudes de aplicaciones
Cada uno de los servicios de tu aplicación y cada una de las versiones de esos servicios deben tener un nombre único. Después, puedes usar esos nombres únicos para orientar y dirigir el tráfico a recursos específicos mediante URLs. Por ejemplo:
https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com
Las solicitudes de los usuarios entrantes se enrutan a los servicios o versiones que se hayan configurado para gestionar el tráfico. También puede orientar y enrutar solicitudes a servicios y versiones específicos. Para obtener más información, consulta "Comunicación entre servicios" ( estándar | flexible ).
Registrar solicitudes de aplicaciones
Cuando tu aplicación gestiona una solicitud, también puede escribir sus propios mensajes de registro en stdout
y stderr
.
Para obtener más información sobre los registros de tu aplicación, consulta el artículo Escribir registros de aplicaciones
( estándar |
flexible ).
Límites
Tanto el entorno flexible como el estándar comparten los mismos límites para los servicios y las versiones. Por ejemplo, si tienes versiones estándar y flexibles en la misma aplicación, esas versiones se contabilizarán en el mismo límite. Para obtener más información, consulta la sección Cuotas y límites ( estándar | flexible ).