Cotas
Este documento descreve os limites da cota do Google Cloud Functions.
As cotas do Google Cloud Functions incluem três áreas:
Limites de recursos
Afetam a quantidade total de recursos que as funções podem consumir.
Limites do tempo
Afetam o tempo em que algo pode ser executado.
Limites de taxas
Afetam a frequência em que você pode chamar a API Cloud Functions para gerenciar suas funções.
Veja abaixo mais detalhes sobre os diferentes tipos de limites. As diferenças entre os limites do Cloud Functions (primeira geração) e do Cloud Functions (segunda geração) são observadas quando aplicável.
Limites de recursos
Os limites de recursos afetam a quantidade total de recursos que as funções podem consumir. O escopo regional é definido por projeto, e cada projeto mantém limites próprios.
Cota | Descrição | Limite (primeira geração) | Limite (segunda geração) | Pode aumentar? | Escopo |
---|---|---|---|---|---|
Número de funções | O número total de funções que podem ser implantadas por região. | 1.000 | 1.000 menos o número de serviços do Cloud Run implantados | Não | por região |
Tamanho máximo da implantação | O tamanho máximo da implantação de uma única função. | 100 MB (compactado) para fontes 500 MB (descompactado) para a soma de fontes com módulos |
N/A | Não | Por função |
Tamanho máximo da solicitação HTTP descompactada | Os dados enviados a funções HTTP em uma solicitação HTTP. | 10 MB | 32 MB | Não | Por invocação |
Tamanho máximo da resposta HTTP descompactada | Os dados enviados a partir de funções HTTP em uma resposta HTTP. | 10 MB | 10 MB para respostas de streaming. 32 MB para respostas que não sejam de streaming. |
Não | Por invocação |
Tamanho máximo dos eventos de funções orientadas a eventos | Os dados enviados nos eventos para funções em segundo plano. | 10 MB | 512 KB para eventos Eventarc. 10 MB para eventos legados. |
Não | Por evento |
Memória máxima da função | Quantidade de memória que cada instância de função pode usar | 8GiB | 32GiB | Não | Por função |
Memória máxima do projeto | Quantidade de memória, em By, que um projeto pode usar. É medida pela soma total da memória solicitada pelo usuário em instâncias de função em um período de 1 minuto. | Depende da região selecionada. Esse limite pode ser maior em regiões de alta capacidade ou menor em regiões abertas recentemente. | N/A | Sim | por projeto e região |
CPU máxima do projeto | Quantidade de CPU, em mili vCPU, que um projeto pode usar. Ela é medida pela soma total da CPU solicitada pelo usuário em todas as instâncias de função em um período de 1 minuto. | Depende da região selecionada. Esse limite pode ser maior em regiões de alta capacidade ou menor em regiões abertas recentemente. | N/A | Sim | por projeto e região |
Limites do tempo
Cota | Descrição | Limite (primeira geração) | Limite (segunda geração) | Pode aumentar? | Escopo |
---|---|---|---|---|---|
Duração máxima da função | A quantidade máxima de tempo em que uma função pode ser executada antes de ser encerrada à força. | 540 segundos | 60 minutos para funções HTTP. 9 minutos para funções orientadas por eventos. |
Não | Por invocação |
Limites de taxas
Cota | Descrição | Limite (primeira geração) | Limite (segunda geração) | Pode aumentar? | Escopo |
---|---|---|---|---|---|
Chamadas de API (READ) | Chamadas para descrever ou listar funções por meio da API Cloud Functions. | 5.000 a cada 100 segundos | 1200 a cada 60 segundos | Somente para a primeira geração | por projeto (primeira geração) por região (segunda geração) |
Chamadas de API (WRITE) | Chamadas para implantar ou excluir funções por meio da API Cloud Functions. | 80 a cada 100 segundos | 60 por 60 segundos | Não 1 | por projeto (1ª geração) por região (2ª geração) |
Chamadas de API (CALL) | Chamadas para a API "call". | 16 a cada 100 segundos | N/A | Não 2 | Por projeto |
Escalabilidade
As funções do Cloud invocadas por HTTP são escalonadas rapidamente para lidar com o tráfego de entrada, enquanto as funções em segundo plano têm um escalonamento mais gradual. O escalonamento de uma função é determinado por alguns fatores, incluindo:
- o tempo necessário para a execução da função ser concluída. O escalonamento de funções de curta duração geralmente acontece para que seja possível lidar com solicitações simultâneas;
- o tempo necessário para uma função ser inicializada em uma inicialização a frio (link em inglês);
- a taxa de erro da sua função;
Fatores temporários, como a carga regional e a capacidade do data center.
Sua configuração, definida por mínimo de instâncias, máximo de instâncias e simultaneidade (a simultaneidade é apenas de 2ª geração).
Outras cotas para funções de segundo plano
Cota | Descrição | Limite | Pode aumentar? | Escopo | Versão do produto |
---|---|---|---|---|---|
Máximo de invocações simultâneas | O número máximo de invocações simultâneas de uma única função Exemplo: se o processamento de cada evento demorar 100 segundos, a taxa de invocação será limitada a 30 por segundo em média. |
3.000 | Sim | Por função | Somente 1ª geração |
Taxa de invocação máxima | A taxa máxima de eventos sendo processados por uma única função Exemplo: se o processamento de um evento demorar 100 ms, a taxa de invocação será limitada a 1.000 por segundo, mesmo que apenas 100 solicitações, em média, sejam processadas em paralelo. |
1.000 por segundo | Não | Por função | Somente 1ª geração |
Máximo de dados de eventos simultâneos | O tamanho máximo total de eventos recebidos para invocações simultâneas de uma única função Exemplo: se os eventos tiverem 1 MB e o processamento deles levar 10 segundos, em média, a taxa será de 1 evento por segundo, porque o 11º evento não será processado até que seja concluído o processamento de um dos 10 primeiros eventos. |
10 MB | Não | Por função | 1ª e 2ª geração |
Capacidade máxima de eventos recebidos | A capacidade máxima de eventos recebidos para uma única função Exemplo: se os eventos tiverem 1 MB, a taxa de invocação poderá ser no máximo 10 por segundo, mesmo se as funções forem concluídas com 100 ms. |
10 MB por segundo | Não | Por função | 1ª e 2ª geração |
Quando você atingir um limite da cota
Quando todo o recurso alocado é consumido por uma função, ele fica indisponível até que você renove ou aumente a cota. Isso significa que a função não será executada enquanto isso, assim como todas as outras funções no mesmo projeto. Uma função retorna um código de erro HTTP 500 quando um dos recursos excede a cota e a função não pode ser executada.
Para aumentar as cotas acima dos padrões listados nesta página, acesse a Página de cotas do Cloud Functions e selecione as cotas que você quer modificar. Em seguida, clique em EDITAR COTAS, forneça as informações do usuário se for necessário e insira o novo limite para cada cota.