Puedes ejecutar tus aplicaciones en App Engine mediante el entorno flexible de App Engine o el entorno estándar de App Engine. También puedes optar por usar simultáneamente ambos entornos para tu aplicación y permitir que tus servicios aprovechen los beneficios individuales de cada entorno.
Entornos de App Engine
App Engine es muy adecuado para aplicaciones diseñadas con una arquitectura de microservicio, especialmente si decides usar ambos entornos. Usa las siguientes secciones para aprender y comprender qué entorno satisface mejor las necesidades de tu aplicación.
Cuándo elegir el entorno estándar
Las instancias de la aplicación se ejecutan en una zona de pruebas mediante el entorno de ejecución de un lenguaje compatible que se enumera a continuación.
Aplicaciones que necesitan lidiar con escalamiento rápido.
El entorno estándar es óptimo para aplicaciones con las siguientes características:
- Diseñado para ejecutarse de forma gratuita o a un costo muy bajo: pagas solo por lo que necesitas y cuando lo necesitas. Por ejemplo, tu aplicación puede escalar a 0 instancias cuando no hay tráfico.
- Experimenta picos repentinos y extremos de tráfico que requieren escalamiento inmediato.
Cuándo elegir el entorno flexible
Las instancias de aplicación se ejecutan dentro de contenedores Docker en máquinas virtuales (VM) de Compute Engine.
Las aplicaciones que reciben tráfico coherente, que experimentan fluctuaciones de tráfico regulares o que cumplen los parámetros para escalar gradualmente.
El entorno flexible es óptimo para aplicaciones con las siguientes características:
- Se ejecuta en un contenedor de Docker que incluye un entorno de ejecución personalizado o código fuente escrito en otros lenguajes de programación.
- Usa o depende de frameworks que incluyen código nativo.
- Accede a los recursos o servicios de tu proyecto de Google Cloud que se encuentran en la red de Compute Engine.
Compara las características de alto nivel
La siguiente tabla resume las diferencias entre los dos entornos:
Función | Entorno estándar | Entorno flexible |
---|---|---|
Tiempo de inicio de instancia | Segundos | Minutos |
Tiempo de espera máximo de una solicitud | Depende del entorno de ejecución y el tipo de escalamiento. | 60 minutos |
Hilos en segundo plano | Sí, con restricciones | Sí |
Procesos en segundo plano | No | Sí |
Depuración de SSH | No | Sí |
Escalamiento | Manual, Básico, Automático | Manual, Automático |
Escala a cero | Sí | No, mínimo 1 instancia |
Escritura en disco local |
Acceso de lectura y escritura al directorio /tmp .
|
Sí, efímero (disco inicializado en cada inicio de VM) |
Modificación del entorno de ejecución | No | Sí (a través de Dockerfile) |
Tiempo de implementación | Segundos | Minutos |
Parches de seguridad automáticos en el lugar | Sí | Sí (excluye el entorno de ejecución de la imagen del contenedor) |
Acceso a las APIs y los servicios de Google Cloud, como Cloud Storage, Cloud SQL, Memorystore, Google Tasks y otros. | Sí | Sí |
WebSockets | No | Sí |
Admite la instalación de binarios de terceros | Sí | Sí |
Ubicación | Ubicaciones para el entorno estándar | Ubicaciones para el entorno flexible |
Precios | Basado en horas de instancia | Basado en el uso de CPU virtual, memoria y discos persistentes |
Consulta también la comparación detallada de los entornos.
Compara el entorno flexible con Compute Engine
El entorno flexible de App Engine tiene las siguientes diferencias con Compute Engine:
Las instancias de VM del entorno flexible se reinician semanalmente. Durante los reinicios, los servicios de administración de Google aplican todas las actualizaciones necesarias del sistema operativo y de seguridad.
Siempre tienes acceso raíz a las instancias de VM de Compute Engine. De forma predeterminada, el acceso SSH a las instancias de VM en el entorno flexible está inhabilitado. Si lo deseas, puedes habilitar el acceso raíz a las instancias de VM de tu aplicación.
Las implementaciones de código pueden llevar más tiempo, ya que las imágenes de contenedor se crean mediante el servicio Cloud Build.
La región geográfica de una instancia de VM del entorno flexible está determinada por la ubicación que especifiques para la aplicación de App Engine de tu proyecto de Google Cloud. Los servicios de administración de Google garantizan que las instancias de VM estén ubicadas conjuntamente para un rendimiento óptimo.
Migra del entorno estándar al entorno flexible
Si tienes una aplicación en el entorno estándar, es posible que desees mover algunos servicios al entorno flexible. Para obtener orientación, consulta las recomendaciones de la comparación de los entornos.
Para migrar servicios específicos para Python, Java, Go y PHP, consulta Migra servicios del entorno estándar al entorno flexible.
Pruébalo tú mismo
Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento del entorno estándar de Ruby en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
Probar el entorno estándar de Ruby gratis