Alojamiento de aplicaciones en Google Cloud

Google Cloud ofrece un amplio abanico de opciones de alojamiento de aplicaciones. Echa un vistazo a este artículo para descubrir cuál se adapta mejor a tus necesidades.


Usos

¿No sabes por dónde empezar? Aquí te detallamos algunas de las situaciones más comunes.
Servicios HTTP y aplicaciones de backend
Frameworks web y microservicios
Ejemplos:
  • Flask
  • Django
  • Express.js
  • Symfony
  • Spring Boot
Entorno estándar de App Engine
  • Funcionalidad de escalado para satisfacer picos de demanda
  • Paga solo por lo que utilices
  • Compatible con puntos de conexión de APIs
Google App Engine Documentos
Aplicaciones basadas en eventos y de procesamiento de datos
Manipulación de eventos y datos generados por usuarios
Ejemplos:
  • Publicar un comentario en un canal de Slack después de una confirmación de GitHub
  • Análisis estadístico
  • Generación de miniaturas
Cloud Functions
  • Diseño pensado para las cargas de trabajo basadas en eventos
  • Funcionalidad de escalado para satisfacer picos de demanda
  • Configuración mínima
Google Cloud Functions Guía de inicio rápido
Aplicaciones y servicios basados en contenedores
Paquete estándar del sector para infraestructuras multinube
Ejemplos:
  • Entornos de ejecución personalizados como Rust, Kotlin, C++ y Bash
  • Aplicaciones web antiguas que utilizan lenguajes como Python 2.7 y Java 7
Cloud Run (plataforma totalmente gestionada)
  • Compatible con contenedores Docker estándar del sector
  • Escala aplicaciones en contenedores automáticamente
  • Binarios y dependencias del sistema personalizados
  • Compatible con puntos de conexión de APIs
Cloud Run (plataforma totalmente gestionada) Guía de inicio rápido
Cargas de trabajo monolíticas y on-premise
Programación sin procesar para satisfacer requisitos de infraestructura previos
Ejemplos:
  • Bases de datos relacionales y SAP HANA
  • Sistemas de CRM
  • Sistemas de ERP antiguos
Compute Engine
Google Compute Engine Tutoriales
Infraestructura escalable alojada en un host propio
Host autogestionado con escalabilidad sin servidor
Ejemplos:
  • Aplicaciones en contenedores que requieren hardware y software personalizados (como sistemas operativos o GPUs)
  • Aplicaciones previas sin reconocimiento del estado en contenedores
  • Aplicaciones de Kubernetes Engine que pueden beneficiarse del escalado a cero
Cloud Run for Anthos en Google Cloud
  • Paquete de contenedores Docker estándar del sector
  • Altamente configurable para llevar a cabo cargas de trabajo y configuraciones antiguas
  • Funcionalidad de escalado para satisfacer la demanda
Cloud Run for Anthos en GCP Guía de inicio rápido
Beta
El software en fase beta no tiene acuerdo de nivel de servicio y puede no ser adecuado para ejecutar cargas de trabajo de producción.

Opciones de alojamiento

Muchas cargas de trabajo tienen requisitos técnicos específicos. Las plataformas están ordenadas por el grado de abstracción.
Compute Engine Kubernetes Engine (GKE) Cloud Run for Anthos en Google Cloud Cloud Run (plataforma totalmente gestionada) Entorno flexible de App Engine Entorno estándar de App Engine Cloud Functions
Formato de despliegue
Imagen de VM
Clúster
Contenedor
Contenedor

Aplicación

o

contenedor

Aplicación
Función
URL personalizadas
Escalado a cero
~
1
Nivel gratuito
Discos persistentes
2
WebSockets
~
3
Beta
Beta
Ejecuta cualquier lenguaje
Tiempo de espera de solicitud
Ninguno
Ninguno
15 minutos
60 minutos
60 minutos
1 minuto
9 minutos
Procesos en segundo plano
~
4
Acceso a TPU y GPU
~
3
Conectividad de VPC
1
Cloud Run for Anthos en Google Cloud escala el recuento de pods a cero. El recuento de nodos por clúster no se puede escalar a cero. Estos nodos se facturan durante los periodos en que no hay solicitudes.
2
Las instancias de contenedor de GKE no conservan los datos al cerrarse. Sin embargo, el disco persistente de Compute Engine se puede activar en las instancias de contenedor de GKE.
3
Aunque no existe ningún impedimento para usar WebSocket y acceder a las TPU y GPU con Cloud Run for Anthos en Google Cloud, no es compatible oficialmente.
4
El entorno estándar de App Engine admite tareas en segundo plano en los modos de escalado básicos y manuales.
Beta
El software en fase beta no tiene acuerdo de nivel de servicio y puede no ser adecuado para ejecutar cargas de trabajo de producción.

Términos clave

Formato de despliegue

¿Cómo se empaqueta tu código cuando lo despliegas en una plataforma?

  • Imágenes de máquina virtual: capturas de un sistema de archivos completo, incluido el SO subyacente
  • Contenedores: sistemas de archivos multiplataforma portátiles aislados del SO subyacente
  • Aplicaciones: un servicio contenido en un directorio con uno o varios casos prácticos
  • Funciones: fragmentos de código que se corresponden con un único caso práctico

URL personalizadas

¿Puedes crear rutas de URL de varias capas (como /abc/def) o usar tu propio nombre de dominio?

Discos persistentes

¿El estado del disco se puede guardar cuando se cierra la instancia o es necesario almacenar los datos a largo plazo fuera de la instancia?

Escalado a cero

¿El producto puede escalarse a cero instancias y evitar la facturación durante periodos de cero solicitudes?

WebSockets

¿El producto es compatible con el protocolo Websocket?

Ejecuta cualquier lenguaje

¿El producto puede ejecutar código en lenguajes de programación arbitrarios?

Tiempo de espera de solicitud

¿Cuál es el máximo periodo de tiempo que la plataforma espera una respuesta del código de la aplicación?

Procesos en segundo plano

¿Este producto puede ejecutar en segundo plano operaciones en curso fuera del periodo de solicitud?

Usar GPUs y TPUs

¿El producto admite la aceleración por software de cargas de trabajo optimizadas para GPUs y TPUs?

Conectividad de VPCs

¿Este producto puede acceder a los recursos de una nube privada virtual?