O Firebase Hosting integra-se com opções de computação sem servidor, incluindo Cloud Functions para Firebase e Cloud Run. Usando o Firebase Hosting com essas opções, você pode hospedar microsserviços direcionando solicitações HTTPS para acionar suas funções e aplicativos em contêineres para execução em um ambiente gerenciado e seguro.
Cloud Functions para Firebase : você escreve e implanta uma função, que é um código de back-end que responde a um gatilho específico. Em seguida, usando o Firebase Hosting, você pode direcionar solicitações HTTPS para acionar a execução de sua função.
Cloud Run : você escreve e implanta um aplicativo empacotado em uma imagem de contêiner. Em seguida, usando o Firebase Hosting, você pode direcionar as solicitações HTTPS para acionar a execução do aplicativo em contêiner.
Casos de uso
Como você pode usar as opções de computação sem servidor com o Firebase Hosting?
Fornecer conteúdo dinâmico — Além de fornecer conteúdo estático em seu site de hospedagem, você pode fornecer respostas geradas dinamicamente de uma função ou aplicativo em contêiner que está executando a lógica do lado do servidor.
Por exemplo, você pode apontar um padrão de URL (como
/blog/<blog-post-id>
) para uma função que usa o parâmetro de ID da postagem do blog da URL para recuperar o conteúdo dinamicamente de seu banco de dados.Crie APIs REST — Você pode criar uma API de microsserviço usando funções.
Por exemplo, as funções podem lidar com a funcionalidade de login do seu site. Enquanto seu site estiver hospedado em
/
, qualquer solicitação para/api
será redirecionada para sua API de microsserviço. Para obter um exemplo, confira este exemplo de código aberto .Cache de conteúdo dinâmico — Você pode configurar o cache de seu conteúdo dinâmico em um CDN global.
Por exemplo, se uma função gera novo conteúdo apenas periodicamente, você pode acelerar seu aplicativo armazenando em cache o conteúdo gerado por pelo menos um curto período de tempo. Você também pode reduzir potencialmente os custos de execução, porque o conteúdo é fornecido a partir do CDN, e não por meio de uma função acionada ou aplicativo em contêiner.
Pré-renderize seus aplicativos de página única — Você pode melhorar o SEO e otimizar o compartilhamento em várias redes sociais criando
meta
dinâmicas. Para saber mais, assista a este vídeo ou confira esta amostra de código aberto .
Escolhendo uma opção sem servidor
Embora o Cloud Functions para Firebase e o Cloud Run se integrem ao Firebase Hosting e ofereçam um ambiente sem servidor totalmente gerenciado, autoescalonável e seguro, as duas opções podem ser aproveitadas para diferentes casos de uso e nível desejado de configuração personalizada.
A tabela a seguir descreve algumas considerações básicas para usar o Cloud Functions para Firebase versus Cloud Run. Para obter uma lista completa de cotas, limites e métricas, consulte a documentação detalhada de cada produto ( Cloud Functions para Firebase ou Cloud Run ).
Consideração | Cloud Functions para Firebase | Cloud Run |
---|---|---|
Configurar | A Firebase CLI agrupa várias tarefas em comandos únicos, desde a inicialização até a criação e implantação. | Os contêineres oferecem opções mais personalizáveis, portanto, as tarefas de configuração, construção e implantação envolvem etapas discretas. |
Ambiente de execução | Requer Node.js, mas você pode especificar qual versão do Node.js usar. | Ao criar seu contêiner , você especifica o ambiente de tempo de execução. |
Suporte a linguagens e frameworks | JavaScript e TypeScript Estruturas da Web, como Express.js, são suportadas. | Qualquer linguagem compatível com Dockerfiles, incluindo Go, Node.js, Python, Java e outras Estruturas da Web para cada idioma são suportadas. |
Tempo limite para solicitação de hospedagem | 60 segundos (ver nota abaixo) | 60 segundos (ver nota abaixo) |
Simultaneidade | 1 solicitação por instância de função (sem simultaneidade por instância) | Até 1.000 solicitações simultâneas por instância de contêiner |
Cobrança | Uso do Cloud Functions Cota de uso gratuita, mas é necessária uma conta do Cloud Billing . Consulte as perguntas frequentes do Firebase . | Uso do Cloud Run + armazenamento do Container Registry Cota de uso gratuita, mas é necessária uma conta do Cloud Billing |