借助 Firebase App Hosting 等无服务器产品,您可以快速部署应用,而无需自行管理基础架构。在 Google 解决方案中,App Hosting 是 Web 开发者在热门框架上创建现代 Web 应用的最佳选择,因为它可管理从 CDN 到服务器端渲染的整个堆栈。
不过,App Hosting 只是 Google 的众多无服务器产品之一。 根据应用的性质或可扩缩性需求,您可以选择 App Hosting 或以下其他产品:
- Cloud Run:最适合在容器中运行后端服务,具有最大的可配置性。
- Cloud Functions:最适合快速创建单一用途的事件驱动型函数。
- Cloud Functions for Firebase:与 Cloud Functions 类似,但采用简化的模型,可更轻松地与其他 Firebase 功能(如 Realtime Database 或 Cloud Firestore)集成。
- Firebase App Hosting:非常适合托管基于现代框架的 Web 应用,这些应用具有服务器端渲染 (SSR) 或生成式 AI 功能。
- Firebase Hosting: 非常适合托管网站和图片等静态资源。
在费用方面,Cloud Run、Cloud Functions 和 Firebase App Hosting 都需要结算账号才能开始使用,并且都包含适用于小型部署的免费层级,价格也都是基于用量。Firebase Hosting 提供免费层级,无需结算账号即可进行小规模部署,并可随着应用规模的扩大灵活扩展。
App Hosting和Firebase Hosting
App Hosting 并非 Firebase Hosting 的直接替代品,而是填补了特定空白。如果您正在开发具有 SSR 的动态服务器渲染 Web 应用,那么 App Hosting 绝对适合您。如果您想为静态网站或单页应用提供托管服务,那么使用原始的 Hosting 来优化成本和性能可能是不错的选择。
由于 App Hosting 和 Firebase Hosting 在支持的功能方面存在一定程度的重叠,因此更详细地了解它们可能会有所帮助。
功能 | Hosting | App Hosting |
---|---|---|
自动部署服务器端渲染的 Web 应用 | 实验性 | 是 |
请求超时 | 1m | 5 分钟 |
缓存超时 | 1 小时 | 1 小时 |
Stale-While-Revalidate 缓存控制 | 否 | 是 |
服务条款 | Firebase | Cloud |
静态内容源副本 | 3 | 无 |
动态内容区域 | 3 | 3 |
持续部署 | 受限 | 内置 |
构建流程 | 本地环境 | 可重现的环境 |
预览内容 | 是 | 否 |
容错 | 全球中断 | 区域级服务中断 |
模拟器 | 是 | 是 |
App Hosting 和 Hosting 的开发生命周期功能
Firebase App Hosting 与 GitHub 深度集成,可为您的应用提供高效的生产环境发布。当您将更改推送到实时分支时,App Hosting 会在可重现的 Cloud Build 环境中构建该分支。然后,在 App Hosting 信息中心界面中,您可以将 Web 应用的每个版本与构建时所用的确切提交相关联,从而了解特定时间有哪些更改处于有效状态。
Firebase Hosting 还提供一定程度的集成功能,可使用 GitHub 操作来创建预览渠道,并响应代码库中的操作,在实际渠道中实施部署。
使用 Firebase CLI 中的框架实验部署的应用
对于使用 Firebase CLI 中的框架实验部署到 Firebase Hosting 的现代 Web 应用,我们建议“升级”至 App Hosting。借助 App Hosting,您将获得一个统一的解决方案来管理从 CDN 到服务器端渲染的所有事项,并可享有经过改进的 GitHub 集成。