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.
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 Google Cloud servicios, como Datastore, se comparten en tu aplicación de App Engine. Para obtener más información, consulta Estructurar servicios web.
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 el tráfico a una o varias versiones específicas de tu aplicación migrando o dividiendo el tráfico.
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.
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
Ten en cuenta que la longitud combinada de
VERSION-dot-SERVICE-dot-PROJECT_ID
, donde
VERSION
es el nombre de tu versión, SERVICE
es el nombre de tu servicio y PROJECT_ID
es tu
ID de proyecto, no puede superar los 63 caracteres ni empezar o terminar con
un guion. Si la longitud combinada es superior a 63 caracteres, puede que aparezca el error DNS address could not be
found.
.
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 Gestionar solicitudes.
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 información detallada sobre los registros de tu aplicación, consulta Escribir registros de aplicaciones.
Límites
El número máximo de servicios y versiones que puedes desplegar depende del precio de tu aplicación:Límite | Aplicación gratuita | Aplicación de pago |
---|---|---|
Número máximo de servicios por aplicación | 5 | 210 |
Número máximo de versiones por aplicación | 15 | 210 |
También hay un límite en el número de instancias de cada servicio con escalado básico o manual:
Número máximo de instancias por versión de escalado manual o básico | ||
---|---|---|
Aplicación gratuita | Aplicación de pago de EE. UU. | Aplicación de pago (UE) |
20 | 25 (200 en us-central ) |
25 |
También hay un límite en el número de caracteres de la URL de tu aplicación.
Descripción | Límite |
---|---|
Número máximo de caracteres en la URL del proyecto para la URL VERSION-dot-SERVICE-dot-PROJECT_ID |
63 |