Cloud Functions para Firebase
Você já usa o Cloud Functions no Google Cloud? Saiba mais sobre o papel do Firebase nesse contexto.
Principais recursos
Integra os recursos do Firebase e conecta o Firebase ao Google Cloud | As funções criadas 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 na sua função. |
Manutenção zero | Implante seu código em JavaScript, TypeScript ou Python nos nossos servidores com apenas um comando na linha de 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 a certeza de que o código permanecerá particular e 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 acionar a função diretamente com uma solicitação HTTP, com o Admin SDK ou com um job programado. No caso de funções em segundo plano, os servidores do Google detectam eventos e executam a função quando ela é 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
- 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.
- Quando você implanta a função:
- A CLI do Firebase cria um arquivo
.zip
com base no código da função, que é enviado para um bucket do Cloud Storage (prefixado comgcf-sources
) antes que o Cloud Functions crie um repositório do Artifact Registry (chamadogcf-artifacts
) no projeto. - O Cloud Build recupera o código da função e cria a fonte dela. É possível conferir os registros do Cloud Build no console do Google Cloud.
- A imagem de contêiner do código de funções criado é enviada para um
repositório particular do Artifact Registry no projeto
(chamado
gcf-artifacts
), e a nova função é lançada.
- A CLI do Firebase cria um arquivo
- Quando o provedor de eventos gera um evento que corresponde às condições da função, o código é invocado.
- 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.
- Ao atualizar a função implantando o código atualizado, as instâncias de versões mais antigas são limpas, além dos artefatos de builds, no Artifact Registry e substituídas por novas instâncias.
- Ao excluir a função, todas as instâncias e arquivos ZIP são limpos, além dos artefatos de builds relacionados, no Artifact 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. Também é possível acionar funções em uma programação fixa ou enfileirar funções de tarefas usando o Admin SDK.
Caminho de implementação
Configurar Cloud Functions | Instale a CLI do Firebase e inicialize o Cloud Functions no projeto do Firebase. | |
Escrever funções | Escreva códigos em JavaScript, TypeScript ou Python para processar 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 CLI do Firebase. Use o console do Google Cloud para conferir e pesquisar registros. |
Próximas etapas
- Comece agora a configurar, criar e implantar funções.
- Saiba mais sobre o que você pode fazer com as funções.
- Conheça o codelab do Cloud Functions.