Este guia compara as opções mais recentes e originais de Google Cloud para implantação de funções. Esta página ajuda quem criou funções com a API Cloud Functions e está fazendo a transição para a API Cloud Run Admin. Esta página descreve as principais diferenças em várias áreas, como conceitos, configuração, implantação, acionadores e novas tentativas.
Comparação
Há duas versões do Cloud Run functions:
- O Cloud Run functions é a versão mais recente das funções, implantadas como um serviço no Cloud Run. Eles podem ser criados de uma das seguintes maneiras: - API Cloud Run Admin
(recomendado): as funções criadas com essa API (por exemplo, usando o
consoleGoogle Cloud , gcloud run, a API REST ou o Terraform) podem ser gerenciadas exclusivamente usando a API Cloud Run Admin.
- API Cloud Functions v2: as funções criadas com essa API (por exemplo, usando gcloud functions, a API REST ou o Terraform) podem ser gerenciadas com a API Cloud Run Admin e a API Cloud Functions v2. Ao usar essa API, você especifica o gatilho ao implantar a função. Saiba como desvincular uma função da API v2 para que ela possa ser gerenciada exclusivamente usando a API Cloud Run Admin.
 
- API Cloud Run Admin
(recomendado): as funções criadas com essa API (por exemplo, usando o
consoleGoogle Cloud , 
- O Cloud Run functions (1ª geração), anteriormente conhecido como Cloud Functions (1ª geração), é a versão original das funções com gatilhos de eventos, ambientes de execução e capacidade de configuração limitados. Saiba como fazer upgrade das funções da 1ª geração para o Cloud Run. 
Ao implantar funções diretamente no Cloud Run, elas são criadas automaticamente como contêineres e implantadas como um serviço do Cloud Run.
Conceitos
A tabela a seguir resume as diferenças conceituais para funções.
| Cloud Run functions | Cloud Run functions (1ª geração) | |
|---|---|---|
| Nome anterior do produto | Cloud Functions (2ª geração) | Cloud Functions (1a geração) | 
| Modelo de recurso | Uma função é um serviço do Cloud Run implantado do código-fonte. | Uma função é implantada do código-fonte | 
| Terminologia dos tipos de funções | 
 | 
 | 
| URL HTTPS atribuído | run.appAs funções criadas com a API Cloud Functions v2 também têm um endpoint cloudfunctions.net. | cloudfunctions.net | 
| Registro de imagens | Apenas o Artifact Registry | Artifact Registry ou Container Registry (descontinuado) | 
| Papéis do IAM para implantação | 
 | 
 | 
| Infraestrutura interna | Cloud Run | Uso interno do Google | 
| Modelo de preços | Preços do Cloud Run | Preços das funções do Cloud Run (1ª geração) | 
Configuração
O Cloud Run cria funções em contêineres e as implanta como serviços. Ao implantar uma função no Cloud Run, você tem acesso e controle total sobre o comportamento dela. Por exemplo, é possível ativar a VPC direta, configurar GPUs, usar montagens de volume e muito mais.
A tabela a seguir resume as diferenças de configuração para funções:
| Cloud Run functions | Cloud Run functions (1ª geração) | |
|---|---|---|
| Tempo limite da solicitação | 
 
 | 
 | 
| Tamanho da instância | Até 16 GiB de RAM com 4 vCPUs | Até 8 GB de RAM com 2 vCPUs | 
| Simultaneidade | Até 1.000 solicitações simultâneas por instância de função. | 1 solicitação simultânea por instância de função | 
| Divisão de tráfego | Com suporte | Sem suporte | 
Implantação
Desde agosto de 2024, é possível usar o Cloud Run para implantar e gerenciar funções criadas com a API Cloud Functions v2. Como resultado dessa mudança:
- Os metadados da função, como ID do ambiente de execução e configurações de build, são armazenados na definição do serviço do Cloud Run.
- É possível editar sua função com segurança usando a API Cloud Run Admin.
- Você pode confiar na definição do serviço do Cloud Run como a fonte de verdade para sua função.
No entanto, as funções criadas com a API Cloud Run Admin não podem ser modificadas com a API Cloud Functions.
A tabela a seguir resume as diferenças na forma de criar, implantar, editar e gerenciar funções:
| Cloud Run functions | Cloud Run functions (1ª geração) | |
|---|---|---|
| Console doGoogle Cloud | Cloud Run | Cloud Run functions (1ª geração) | 
| SDK Cloud | 
 | 
 | 
| API REST | 
 
 | 
 | 
| Terraform | 
 
 | 
Gatilhos e novas tentativas
A tabela a seguir compara gatilhos e novas tentativas para funções:
| Cloud Run functions | Cloud Run functions (1ª geração) | |
|---|---|---|
| Acionar e invocar uma função | Para funções criadas com a API Cloud Run Admin, você
       especifica gatilhos como parte da implantação da função
       no console Google Cloud ou depois de implantar a função ao usar a
       CLI gcloud. Para funções criadas com a API Cloud Functions v2, especifique gatilhos como parte da implantação da função. | Especifique gatilhos como parte da implantação da função. | 
| Tipos de evento | Suporte para qualquer tipo de evento compatível com o Eventarc, incluindo mais de 90 origens de eventos pelos Registros de auditoria do Cloud. | Suporte direto para eventos de sete fontes. | 
| Novas tentativas | Para funções criadas com a API Cloud Run Admin, atualize a
       política de nova tentativa
       no Eventarc e configure um
       tópico de mensagens inativas
        no Pub/Sub. Para funções criadas com a API Cloud Functions v2, especifique as repetições como parte da implantação da função com a flag --retry. | Você especifica novas tentativas como parte da implantação da função com a flag --retry. | 
Desvincular a função
As funções criadas usando a API Cloud Functions v2 (por exemplo, usando gcloud functions, a API REST ou o Terraform) podem ser separadas do ambiente de API atual. Depois de separar uma função, só é possível gerenciá-la usando a API Cloud Run Admin. Isso pode ser útil se as cargas de trabalho precisarem permanecer dentro do limite da API run.googleapis.com para Assured Workloads ou para garantir que elas usem a SKU do Cloud Run.
Consulte Gerenciar funções para saber mais.
A seguir
- Consulte o guia de início rápido para implantar uma função do Cloud Run.