Modelo de recurso

No diagrama a seguir, mostramos o modelo de recursos do Cloud Run:

Serviços e revisões do Cloud Run

No diagrama, mostramos um projeto do Google Cloud contendo dois serviços do Cloud Run, Service A e Service B, cada um com várias revisões.

No diagrama, Service A está recebendo muitas solicitações, o que resulta na inicialização e execução de várias instâncias de contêiner. No momento, Service B não está recebendo solicitações. Portanto, nenhuma instância de contêiner foi iniciada ainda.

Serviços do Cloud Run

O serviço é o principal recurso do Cloud Run. Cada serviço está localizado em uma região específica do GCP (Cloud Run) ou em um namespace de cluster do GKE (Cloud Run para Anthos no Google Cloud). Para redundância e failover, os serviços são replicados automaticamente em várias zonas na região em que estão. Um determinado projeto do GCP pode executar muitos serviços em diferentes regiões ou clusters do GKE.

Cada serviço expõe um endpoint exclusivo e escalona automaticamente a infraestrutura subjacente para manipular solicitações de entrada.

Revisões do Cloud Run

Cada implantação em um serviço cria uma revisão, que consiste em uma imagem de contêiner específica, com configurações de ambiente, como variáveis de ambiente, limites de memória ou valor de simultaneidade.

As revisões são imutáveis: depois que uma revisão é criada, ela não pode ser modificada. Por exemplo, quando você implanta uma imagem de contêiner em um novo serviço do Cloud Run, a primeira revisão é criada. Se em seguida você implantar uma imagem de contêiner diferente no mesmo serviço, uma segunda revisão será criada. Se, depois, você definir uma variável de ambiente, uma terceira revisão será criada e assim por diante.

As solicitações são roteadas automaticamente o quanto antes para a última revisão de serviço íntegra.

Instâncias de contêiner do Cloud Run

Cada solicitação de recebimento de revisão é escalonada automaticamente para o número de instâncias de contêiner necessárias para lidar com todas essas solicitações. Observe que uma instância de contêiner pode receber muitas solicitações ao mesmo tempo. Com a configuração de simultaneidade, é possível definir o número máximo de solicitações que podem ser enviadas em paralelo a uma determinada instância de contêiner.