Esta página detalha os limites escalonáveis e baseados em uso para Cloud Functions de acordo com o plano de preços pré-pago Blaze. Esses limites se aplicam a projetos do Firebase que implantam funções no ambiente de execução Node.js 10.
O plano Blaze oferece quantidades generosas de invocações, tempo de computação e tráfego de Internet gratuitamente. No entanto, as implantações de funções incorrem em cobranças de pequena escala pelo espaço de armazenamento usado para o contêiner da função. Consulte as Perguntas frequentes do Firebase para obter mais informações.
As cotas para Google Cloud Functions abrangem três áreas:
Limites de recursos
Isso afeta a quantidade total de recursos que suas funções podem consumir.
Limites de tempo
Isso afeta quanto tempo as coisas podem durar.
Limites de taxa
Eles afetam a taxa na qual você pode chamar a API Cloud Functions para gerenciar suas funções.
Os diferentes tipos de limites são descritos com mais detalhes abaixo. As diferenças entre os limites para Cloud Functions (1ª geração) e Cloud Functions (2ª geração) são indicadas quando aplicável.
Limites de recursos
Os limites de recursos afetam a quantidade total de recursos que suas funções podem consumir. O escopo regional é por projeto, e cada projeto mantém seus próprios limites.
Contingente | Descrição | Limite (1ª geração) | Limite (2ª geração) | Pode ser aumentado | 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 Cloud Run implantados | Não | por região |
Tamanho máximo de implantação | O tamanho máximo de uma implantação de função única | 100 MB (compactado) para fontes. 500 MB (descompactado) para fontes mais módulos. | N / D | Não | por função |
Tamanho máximo da solicitação HTTP não compactada | Dados enviados para funções HTTP em uma solicitação HTTP | 10MB | 32 MB | Não | por invocação |
Tamanho máximo da resposta HTTP não compactada | Dados enviados de funções HTTP em uma resposta HTTP | 10MB | 10 MB para respostas de streaming. 32 MB para respostas sem streaming. | Não | por invocação |
Tamanho máximo do evento para funções orientadas a eventos | Dados enviados em eventos para funções em segundo plano | 10MB | 512 KB para eventos Eventarc. 10 MB para eventos legados. | Não | por evento |
Memória máxima de função | Quantidade de memória que cada instância de função pode usar | 8GiB | 32GiB | Não | por função |
Limites de tempo
Contingente | Descrição | Limite (1ª geração) | Limite (2ª geração) | Pode ser aumentado | Escopo |
---|---|---|---|---|---|
Duração máxima da função | A quantidade máxima de tempo 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 a eventos. | Não | por invocação |
Limites de taxa
Contingente | Descrição | Limite (1ª geração) | Limite (2ª geração) | Pode ser aumentado | Escopo |
---|---|---|---|---|---|
Chamadas de API (LER) | Chamadas para descrever ou listar funções por meio da API Cloud Functions | 5.000 por 100 segundos | 1200 por 60 segundos | Somente para 1ª geração | por projeto (1ª geração) por região (2ª geração) |
Chamadas de API (WRITE) | Chamadas para implantar ou excluir funções por meio da API Cloud Functions | 80 por 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 por 100 segundos | N / D | Não 2 | por projeto |
Escalabilidade
As Cloud Functions invocadas por HTTP são escalonadas rapidamente para lidar com o tráfego de entrada, enquanto as funções em segundo plano são escalonadas de forma mais gradual. A capacidade de expansão de uma função é ditada por alguns fatores, incluindo:
- A quantidade de tempo que leva para a execução de uma função ser concluída (funções de execução curta geralmente podem ser ampliadas para lidar com mais solicitações simultâneas).
- A quantidade de tempo que uma função leva para inicializar na inicialização a frio .
- A taxa de erro da sua função.
Fatores transitórios, como carga regional e capacidade do data center.
Cotas adicionais para funções em segundo plano
Contingente | Descrição | Limite | Pode ser aumentado | Escopo | Versão do produto |
---|---|---|---|---|---|
Máximo de invocações simultâneas | O máximo de invocações simultâneas de uma única função Exemplo: se o tratamento de cada evento levar 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 máxima de invocação | A taxa máxima de eventos sendo tratados por uma única função Exemplo: se o tratamento de um evento levar 100 ms, a taxa de invocação será limitada a 1.000 por segundo, mesmo que apenas 100 solicitações, em média, sejam tratadas em paralelo | 1000 por segundo | Não | por função | Somente 1ª geração |
Tamanho máximo de dados de eventos simultâneos | O tamanho total máximo de eventos recebidos para invocações simultâneas de uma única função Exemplo: se os eventos tiverem 1 MB e o processamento levar 10 segundos, a taxa média será de 1 evento por segundo, pois o 11º evento não será processado até que o processamento de um dos 10 primeiros eventos termine | 10MB | Não | por função | 1ª geração e 2ª geração |
Taxa de transferência máxima de eventos recebidos | A taxa de transferência máxima de eventos recebidos para uma única função Exemplo: se os eventos tiverem tamanho de 1 MB, a taxa de invocação poderá ser no máximo 10 por segundo, mesmo que as funções terminem em 100 ms | 10 MB por segundo | Não | por função | 1ª geração e 2ª geração |
Quando você atinge um limite de cota
Quando uma função consome todo um recurso alocado, o recurso fica indisponível até que a cota seja atualizada ou aumentada. Isso pode significar que sua função e todas as outras funções do mesmo projeto não funcionarão até então. Uma função retorna um código de erro HTTP 500 quando um dos recursos ultrapassa a cota e a função não pode ser executada.
Para aumentar as cotas acima dos padrões listados aqui, acesse a página de cotas do Cloud Functions , selecione as cotas que deseja modificar, clique em EDITAR COTAS , forneça suas informações de usuário, se solicitado, e insira o novo limite de cota para cada cota selecionada.
Limites de cota para implantação da CLI do Firebase
Para cada função implantada pela CLI do Firebase, estes tipos de taxa e limites de tempo são afetados:
- Chamadas de API (READ) – 1 chamada por implantação, não importa quantas funções
- Limite: 5.000 por 100 segundos
- Chamadas de API (WRITE) – 1 chamada por função
- Limite: 80 por 100 segundos
Consulte também a referência da CLI do Firebase .