Modelo de recursos

En el siguiente diagrama, se muestra el modelo de recursos de Cloud Run:

Servicios y revisiones de Cloud Run

En el diagrama, se muestra un proyecto de Google Cloud que contiene dos servicios de Cloud Run, Service A y Service B, y cada uno tiene varias revisiones.

En el diagrama, Service A recibe muchas solicitudes, lo que hace que se inicien y ejecuten varias instancias de contenedor. Ten en cuenta que Service B no recibe solicitudes por el momento, por lo que aún no se inició ninguna instancia de contenedor.

Servicios de Cloud Run

El servicio es el recurso principal de Cloud Run. Cada servicio se ubica en una región de GCP específica (Cloud Run) o en un espacio de nombres del clúster de GKE (Cloud Run for Anthos en Google Cloud). Para la redundancia y la conmutación por error, los servicios se replican de forma automática en varias zonas de la región en la que se encuentran. Un proyecto de GCP determinado puede ejecutar muchos servicios en regiones o clústeres de GKE diferentes.

Cada servicio expone un extremo único y ajusta de forma automática la escala de la infraestructura subyacente para controlar las solicitudes entrantes.

Revisiones de Cloud Run

Cada implementación en un servicio conlleva la creación de una revisión. Una revisión consta de una imagen de contenedor específica, además de la configuración del entorno, como las variables de entorno, los límites de memoria o el valor de simultaneidad.

Las revisiones son inmutables: una vez que se crean, no se pueden modificar. Por ejemplo, cuando implementas una imagen de contenedor en un servicio de Cloud Run nuevo, se crea la primera revisión. Si luego implementas una imagen de contenedor diferente en ese mismo servicio, se crea una segunda revisión. Si después configuras una variable de entorno, se crea una tercera revisión, y así sucesivamente.

Las solicitudes se enrutan de forma automática a la revisión del servicio en buen estado más reciente lo antes posible.

Instancias de contenedor de Cloud Run

Cada revisión que recibe solicitudes se escala de forma automática a la cantidad de instancias de contenedor necesarias para manejar todas estas solicitudes. Ten en cuenta que una instancia de contenedor puede recibir muchas solicitudes al mismo tiempo. Con la configuración de simultaneidad, puedes establecer la cantidad máxima de solicitudes que se pueden enviar en paralelo a una instancia de contenedor determinada.