Diffuser du contenu dynamique et héberger des microservices à l'aide de Firebase Hosting
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Firebase Hosting s'intègre aux options de calcul sans serveur, y compris Cloud Functions for Firebase et Cloud Run. En utilisant Firebase Hosting avec ces options, vous pouvez héberger des microservices en dirigeant des requêtes HTTPS pour déclencher l'exécution de vos fonctions et applications conteneurisées dans un environnement géré et sécurisé.
Cloud Functions for Firebase : vous écrivez et déployez une fonction, qui est un code de backend qui répond à un déclencheur spécifique. Ensuite, à l'aide de Firebase Hosting, vous pouvez rediriger les requêtes HTTPS pour déclencher l'exécution de votre fonction.
Cloud Run : vous écrivez et déployez une application empaquetée dans une image de conteneur. Ensuite, à l'aide de Firebase Hosting, vous pouvez diriger les requêtes HTTPS pour déclencher l'exécution de votre application conteneurisée.
Cas d'utilisation
Comment utiliser les options d'informatique sans serveur avec Firebase Hosting ?
Diffuser du contenu dynamique : en plus de diffuser du contenu statique sur votre site Hosting, vous pouvez diffuser des réponses générées de manière dynamique à partir d'une fonction ou d'une application conteneurisée qui exécute une logique côté serveur.
Par exemple, vous pouvez associer un modèle d'URL (comme /blog/<blog-post-id>) à une fonction qui utilise le paramètre d'ID de l'article de blog de l'URL pour récupérer du contenu de manière dynamique à partir de votre base de données.
Créer des API REST : vous pouvez créer une API de microservice à l'aide de fonctions.
Par exemple, les fonctions peuvent gérer la fonctionnalité de connexion pour votre site Web. Bien que votre site Web soit hébergé sur /, toute requête adressée à /api est redirigée vers votre API de microservice. Pour obtenir un exemple, consultez cet exemple Open Source.
Mettre en cache du contenu dynamique : vous pouvez configurer la mise en cache de votre contenu dynamique sur un CDN mondial.
Par exemple, si une fonction génère du contenu nouveau uniquement de manière périodique, vous pouvez accélérer votre application en mettant en cache le contenu généré pendant au moins une courte période. Vous pouvez également réduire les coûts d'exécution, car le contenu est diffusé à partir du CDN plutôt que via une fonction déclenchée ou une application conteneurisée.
Prérendez vos applications monopages : vous pouvez améliorer le référencement et optimiser le partage sur différents réseaux sociaux en créant des balises meta dynamiques. Pour en savoir plus, regardez cette vidéo ou consultez cet exemple Open Source.
Choisir une option sans serveur
Bien que Cloud Functions for Firebase et Cloud Run s'intègrent à Firebase Hosting et offrent un environnement sans serveur entièrement géré, sécurisé et à autoscaling, les deux options peuvent être utilisées pour différents cas d'utilisation et différents niveaux de configuration personnalisée.
Lorsque vous utilisez l'une des options sans serveur, il est préférable de la colocaliser avec les serveurs pour Firebase Hosting en déployant dans l'une des régions suivantes :
us-west1
us-central1
us-east1
europe-west1
asia-east1
Le tableau suivant décrit quelques considérations de base pour l'utilisation de Cloud Functions for Firebase par rapport à Cloud Run. Pour obtenir la liste complète des quotas, des limites et des métriques, consultez la documentation détaillée de chaque produit (Cloud Functions for Firebase ou Cloud Run).
Considération
Cloud Functions for Firebase
Cloud Run
Configuration
La CLI Firebase regroupe plusieurs tâches en une seule commande, de l'initialisation à la compilation et au déploiement.
Les conteneurs offrent des options plus personnalisables. Les tâches de configuration, de compilation et de déploiement impliquent donc des étapes distinctes.
Environnement d'exécution
Nécessite Node.js, mais vous pouvez spécifier la version de Node.js à utiliser.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/08 (UTC).
[null,null,["Dernière mise à jour le 2025/08/08 (UTC)."],[],[],null,["\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nFirebase Hosting integrates with serverless computing options, including\nCloud Functions for Firebase and Cloud Run. Using Firebase Hosting with\nthese options, you can host microservices by directing HTTPS requests to trigger\nyour functions and containerized apps to run in a managed, secure environment.\n\n[**Cloud Functions for Firebase**](/docs/hosting/functions): You write and deploy a\nfunction, which is backend code that responds to a specific trigger. Then, using\nFirebase Hosting, you can direct HTTPS requests to trigger your function\nto run.\n\n[**Cloud Run**](/docs/hosting/cloud-run): You write and deploy an\napplication packaged in a container image. Then, using Firebase Hosting, you\ncan direct HTTPS requests to trigger your containerized app to run.\n| **Note:** If you're using Angular or Next.js to develop a full-stack Web app with server-side rendering or AI features, try out the preview of [App Hosting](/docs/app-hosting). App Hosting is a unified product for managing static and dynamic content together.\n\nUse cases\n\nHow can you use serverless computing options with Firebase Hosting?\n\n- **Serve dynamic content** --- In addition to serving static content on\n your Hosting site, you can serve dynamically generated responses from a\n function or containerized app that is performing server-side logic.\n\n For example, you can point a URL pattern (like `/blog/\u003cblog-post-id\u003e`) to a\n function that uses the URL's blog post ID parameter to retrieve content\n dynamically from your database.\n- **Build REST APIs** --- You can create a microservice API using functions.\n\n For instance, functions can handle the sign-in functionality for your\n website. While your website is hosted at `/`, any request to `/api` is\n redirected to your microservice API. For an example, check out\n [this open-source sample](//github.com/firebase/functions-samples/tree/Node-8/authenticated-json-api).\n- **Cache dynamic content** --- You can\n [configure caching](/docs/hosting/manage-cache) of your dynamic content on\n a global CDN.\n\n For example, if a function generates new content only periodically, you\n can speed up your app by caching the generated content for at least a short\n period of time. You can also potentially reduce execution costs because the\n content is served from the CDN rather than via a triggered function or\n containerized app.\n- **Prerender your single-page apps** --- You can improve SEO and optimize\n sharing across various social networks by creating dynamic `meta` tags. To\n learn more, watch this [video](//www.youtube.com/watch?v=82tZAPMHfT4)\n or check out\n [this open-source sample](//github.com/firebase/functions-samples/tree/Node-8/isomorphic-react-app).\n\nChoosing a serverless option\n\nWhile both [**Cloud Functions for Firebase**](/docs/hosting/functions) and\n[**Cloud Run**](/docs/hosting/cloud-run) integrate with\nFirebase Hosting and offer a fully managed, autoscaling, and secure\nserverless environment, the two options can be leveraged for different use cases\nand desired level of customized configuration.\n\nWhen using either serverless option, it is best to co-locate it with the servers\nfor Firebase Hosting by deploying in one of the following regions:\n\n- `us-west1`\n- `us-central1`\n- `us-east1`\n- `europe-west1`\n- `asia-east1`\n\nThe following table describes some basic considerations for using\nCloud Functions for Firebase versus Cloud Run. For a full listing of\nquotas, limits, and metrics, refer to each product's detailed documentation\n([Cloud Functions for Firebase](/docs/functions/quotas) or\n[Cloud Run](//cloud.google.com/run/quotas)).\n\n| **Consideration** | **Cloud Functions for Firebase** | **Cloud Run** |\n|-------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **Setup** | The Firebase CLI bundles multiple tasks into single commands, from initializing to building and deploying. | Containers offer more customizable options, so setup, build, and deployment tasks involve discrete steps. |\n| **Runtime environment** | Requires Node.js, but you can specify [which version](/docs/functions/manage-functions#set_runtime_options) of Node.js to use. | When [building your container](/docs/hosting/cloud-run#containerize), you specify the runtime environment. |\n| **Language and frameworks support** | JavaScript and TypeScript Web frameworks, like Express.js, are supported. | Any language that Dockerfiles support, including [Go, Node.js, Python, Java, and others](//cloud.google.com/run/docs/quickstarts/build-and-deploy#writing) Web frameworks for each language are supported. |\n| **Timeout for Hosting request** | 60 seconds (see Note below) | 60 seconds (see Note below) |\n| **Concurrency** | 1 request per function instance (no concurrency per instance) | Up to 1,000 concurrent requests per container instance |\n| **Billing** | [Cloud Functions usage](/pricing) Free usage quota, but a [Cloud Billing account](//cloud.google.com/billing/docs/how-to/manage-billing-account) is required. See the [Firebase FAQ](/support/faq#functions-pricing). | [Cloud Run usage](//cloud.google.com/run/pricing) + [Container Registry storage](//cloud.google.com/container-registry/) Free usage quota, but a [Cloud Billing account](//cloud.google.com/billing/docs/how-to/manage-billing-account) is required |\n| **Billing** | | If your Firebase project is on the Spark pricing plan, and you associate your Firebase project with a Cloud Billing account, then your Firebase project is automatically upgraded to the Blaze pricing plan. Review the [Firebase pricing page](/pricing) for a comparison of the Spark and Blaze plans. ||\n\n| **Note:** Even though Cloud Functions and Cloud Run have longer request timeouts, Firebase Hosting is subject to a 60-second request timeout. If your app requires more than 60 seconds to run, you'll receive an HTTPS status code `504` (request timeout)."]]