Defina o número máximo de pedidos simultâneos por instância

Para compreender a definição de pedidos simultâneos máximos por instância, leia o documento conceptual.

Funções necessárias

Para receber as autorizações de que precisa para configurar e implementar serviços do Cloud Run, peça ao seu administrador para lhe conceder as seguintes funções de IAM:

Se estiver a implementar um serviço ou uma função a partir do código fonte, também tem de ter funções adicionais concedidas no seu projeto e na conta de serviço do Cloud Build.

Para ver uma lista de funções e autorizações de IAM associadas ao Cloud Run, consulte os artigos Funções de IAM do Cloud Run e Autorizações de IAM do Cloud Run. Se o seu serviço do Cloud Run interage com Google Cloud APIs, como as bibliotecas cliente da Google Cloud, consulte o guia de configuração da identidade do serviço. Para mais informações sobre a atribuição de funções, consulte as autorizações de implementação e faça a gestão do acesso.

Configure o número máximo de pedidos simultâneos por instância

Qualquer alteração de configuração leva à criação de uma nova revisão. As revisões subsequentes também vão receber automaticamente esta definição de configuração, a menos que faça atualizações explícitas para a alterar.

Para os serviços do Cloud Run, pode definir o número máximo de pedidos concorrentes por instância através da Google Cloud consola, da linha de comandos gcloud ou de um ficheiro .yaml quando cria um novo serviço ou implementa uma nova revisão:

Consola

  1. Na Google Cloud consola, aceda ao Cloud Run:

    Aceda ao Cloud Run

  2. Selecione Serviços no menu e clique em Implementar contentor para configurar um novo serviço. Se estiver a configurar um serviço existente, clique no serviço e, de seguida, em Editar e implementar nova revisão.

  3. Se estiver a configurar um novo serviço, preencha a página de definições iniciais do serviço e, de seguida, clique em Contentores, volumes, rede, segurança para expandir a página de configuração do serviço.

  4. Clique no separador Contentor.

    imagem

    • Defina o valor máximo de pedidos simultâneos desejado por instância na caixa de texto Pedidos máximos por contentor.
  5. Clique em Criar ou Implementar.

gcloud

Para definir o número máximo de pedidos simultâneos por instância, use o seguinte comando:

gcloud run services update SERVICE --concurrency CONCURRENCY

Substitua o seguinte:

  • SERVICE: o nome do seu serviço.
  • CONCURRENCY: o número máximo de pedidos simultâneos por instância. Por exemplo, o seguinte define um máximo de 1 pedidos simultâneos:

    gcloud run services update SERVICE --concurrency 1

A alteração do número máximo de pedidos simultâneos por instância de um determinado serviço vai capturar esta definição numa nova revisão.

Para reverter para o máximo predefinido de pedidos simultâneos por instância (80), use o comando

gcloud run services update SERVICE --concurrency default

Substitua SERVICE pelo nome do serviço que está a configurar.

YAML

  1. Se estiver a criar um novo serviço, ignore este passo. Se estiver a atualizar um serviço existente, transfira a respetiva configuração YAML:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Atualize o atributo containerConcurrency:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          name: REVISION
        spec:
          containerConcurrency: CONCURRENCY

    Substitua o seguinte:

    • SERVICE: o nome do seu serviço do Cloud Run
    • IMAGE_URL: uma referência à imagem do contentor, por exemplo, us-docker.pkg.dev/cloudrun/container/hello:latest. Se usar o Artifact Registry, o repositório REPO_NAMEtem de já estar criado. O URL segue o formato LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG .
    • CONCURRENCY: o número máximo de pedidos simultâneos por instância.
    • REVISION com um novo nome de revisão ou elimine-o (se existir). Se fornecer um novo nome de revisão, este tem de cumprir os seguintes critérios:
      • Começa com SERVICE-
      • Contém apenas letras minúsculas, números e -
      • Não termina com um -
      • Não exceder 63 carateres
  3. Crie ou atualize o serviço com o seguinte comando:

    gcloud run services replace service.yaml

Terraform

Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform.

Adicione o seguinte a um recurso google_cloud_run_v2_service na sua configuração do Terraform:

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-concurrency"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
    }
    # Maximum concurrent requests
    max_instance_request_concurrency = 80
  }
}

Substitua 80 pelo número máximo pretendido de pedidos simultâneos.

Veja as definições de concorrência

Para ver as definições de simultaneidade atuais do seu serviço do Cloud Run:

Consola

  1. Na Google Cloud consola, aceda ao Cloud Run:

    Aceda ao Cloud Run

  2. Clique no serviço que lhe interessa para abrir a página Detalhes do serviço.

  3. Clique no separador Revisões.

  4. No painel de detalhes à direita, a definição de simultaneidade é apresentada no separador Contentor.

gcloud

  1. Use o seguinte comando:

    gcloud run services describe SERVICE
  2. Localize a definição de simultaneidade na configuração devolvida.