获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

使用 Firebase 托管提供动态内容和托管微服务

Firebase 托管与无服务器计算选项集成,包括 Cloud Functions for Firebase 和 Cloud Run。通过这些选项使用 Firebase 托管,您可以通过引导 HTTPS 请求来触发您的函数和容器化应用程序在托管的安全环境中运行来托​​管微服务。

Cloud Functions for Firebase :您编写和部署一个函数,它是响应特定触发器的后端代码。然后,使用 Firebase 托管,您可以引导 HTTPS 请求来触发您的函数运行。

Cloud Run :您编写和部署打包在容器映像中的应用程序。然后,使用 Firebase 托管,您可以引导 HTTPS 请求来触发您的容器化应用程序运行。

用例

如何通过 Firebase 托管使用无服务器计算选项?

  • 提供动态内容——除了在您的托管站点上提供静态内容外,您还可以提供从执行服务器端逻辑的函数或容器化应用程序动态生成的响应。

    例如,您可以将 URL 模式(如/blog/<blog-post-id> )指向使用 URL 的博客文章 ID 参数从数据库中动态检索内容的函数。

  • 构建 REST API——您可以使用函数创建微服务 API。

    例如,函数可以处理您网站的登录功能。当您的网站托管在/时,对/api的任何请求都会重定向到您的微服务 API。例如,查看这个开源示例

  • 缓存动态内容— 您可以在全局 CDN 上配置动态内容的缓存。

    例如,如果一个函数只定期生成新内容,您可以通过至少在短时间内缓存生成的内容来加速您的应用程序。您还可以潜在地降低执行成本,因为内容是从 CDN 提供的,而不是通过触发函数或容器化应用程序提供的。

  • 预渲染您的单页应用程序——您可以通过创建动态meta标记来改进 SEO 并优化跨各种社交网络的共享。要了解更多信息,请观看此视频或查看此开源示例

选择无服务器选项

虽然Cloud Functions for FirebaseCloud Run都与 Firebase Hosting 集成并提供完全托管、自动扩展和安全的无服务器环境,但这两个选项可用于不同的用例和所需的自定义配置级别。

下表介绍了使用 Cloud Functions for Firebase 与 Cloud Run 的一些基本注意事项。如需配额、限制和指标的完整列表,请参阅每个产品的详细文档( Cloud Functions for FirebaseCloud Run )。

考虑Firebase 的云函数云跑
设置Firebase CLI 将多个任务捆绑到单个命令中,从初始化到构建和部署。容器提供了更多可定制的选项,因此设置、构建和部署任务涉及离散的步骤。
运行环境需要 Node.js,但您可以指定要使用的 Node.js版本构建容器时,您指定运行时环境。
语言和框架支持

JavaScript 和 TypeScript

支持 Web 框架,例如 Express.js。

Dockerfiles 支持的任何语言,包括Go、Node.js、Python、Java 等

支持每种语言的 Web 框架。

托管请求超时60 秒(见下文注释) 60 秒(见下文注释)
并发每个函数实例 1 个请求
(每个实例没有并发)
每个容器实例最多 1,000 个并发请求
计费云函数使用情况

免费使用配额,但需要Cloud Billing 帐号。请参阅Firebase 常见问题解答

Cloud Run 使用情况+ Container Registry 存储

免费使用配额,但需要Cloud Billing 帐号