Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Cloud Functions para Firebase

O Cloud Functions para Firebase é um framework sem servidor que permite executar automaticamente o código de back-end em resposta a eventos acionados por recursos do Firebase e solicitações HTTPS. Seu código JavaScript ou TypeScript é armazenado na nuvem do Google e executado em um ambiente gerenciado. Não é necessário gerenciar e dimensionar servidores próprios.

Você já usa o Cloud Functions no Google Cloud? Saiba mais sobre o papel do Firebase nesse contexto.

Primeiros passos Casos de uso

Principais recursos

Integra a plataforma do Firebase

As funções que você escreve podem responder a eventos gerados por vários recursos do Firebase e do Google Cloud, de gatilhos do Firebase Authentication a gatilhos do Cloud Storage.

Faça a integração em todos os recursos do Firebase com o SDK Admin junto ao Cloud Functions. Além disso, grave seus próprios webhooks para fazer a integração com serviços de terceiros. O Cloud Functions minimiza o código boilerplate, facilitando o uso do Firebase e do Google Cloud dentro da sua função.
Manutenção zero Implante seu código JavaScript ou TypeScript nos nossos servidores com apenas um comando. Em seguida, o Firebase escalona automaticamente os recursos computacionais para corresponder aos padrões de uso dos seus usuários. Você não precisa se preocupar com credenciais, configuração e provisionamento de novos servidores ou desativação dos antigos.
Mantém a privacidade e a segurança do seu código Em muitos casos, os desenvolvedores preferem controlar a lógica do aplicativo no servidor para evitar adulterações no lado do cliente. Além disso, às vezes, eles querem evitar a engenharia reversa desse código. O Cloud Functions é totalmente isolado do cliente. Assim, é possível ter certeza de que seu código é particular e de que sempre fará exatamente o que você quer.

Como funciona?

Depois que você escreve e implanta uma função, os servidores do Google começam a gerenciá-la imediatamente. Você pode disparar a função diretamente com uma solicitação HTTP ou, no caso de funções de segundo plano, os servidores do Google detectarão eventos e executarão a função quando ela for acionada.

À medida que a carga aumenta ou diminui, o Google responde escalonando rapidamente o número de instâncias de servidor virtual necessárias para executar sua função. Cada função é executada isoladamente, no próprio ambiente e com a própria configuração.

Ciclo de vida de uma função de segundo plano

  1. Você escreve o código para uma nova função, seleciona um provedor de eventos, como o Cloud Firestore, e define as condições sob as quais ela precisa ser executada.
  2. Quando você implanta a função:
    1. A CLI do Firebase cria um arquivo .zip do código de função, que, em seguida, é enviado para um bucket do Cloud Storage (prefixado com gcf-sources) no seu projeto do Firebase.
    2. O Cloud Build recupera o código da função e cria a fonte dela. É possível ver os registros do Cloud Build no Console do Google Cloud.
    3. A imagem de contêiner do código de funções criado é enviada para um repositório particular do Container Registry no projeto, chamado de gcf, e a nova função é lançada.
  3. Quando o provedor de eventos gera um evento que corresponde às condições da função, o código é invocado.
  4. Se a função estiver ocupada com muitos eventos, o Google criará mais instâncias para executar o trabalho com mais rapidez. Caso a função esteja ociosa, as instâncias serão limpas.
  5. Quando você atualiza a função implantando o código atualizado, as instâncias de versões mais antigas são limpas junto aos artefatos de versão no Cloud Storage e no Container Registry. Depois disso, elas são substituídas por novas instâncias.
  6. Quando você exclui a função, todas as instâncias e arquivos ZIP são limpos junto aos artefatos de versão relacionados no Cloud Storage e no Container Registry. A conexão entre a função e o provedor de eventos é removida.

Além de detectar eventos com uma função de segundo plano, você pode chamá-las diretamente com uma solicitação HTTP ou uma chamada do cliente.

Programa de implementação

Configurar o Cloud Functions Instale a Firebase CLI e inicialize o Cloud Functions no seu projeto do Firebase.
Escrever funções Escreva o código JavaScript (ou TypeScript para transcompilar na implantação) para lidar com eventos de serviços do Firebase, do Google Cloud ou de outros provedores de eventos.
Testar funções Use o emulador local para testar suas funções.
Implantar e monitorar Ative o faturamento do projeto e implante as funções usando a Firebase CLI. É possível usar o Console do Firebase para visualizar e pesquisar seus registros.

Próximas etapas