首页 > 解决方案 > firebase 功能与 firebase 托管的缺点

问题描述

我想在 firebase 上托管使用 Next.js 的导出功能创建的静态 webapp。当底层数据库发生更改时,应用程序会将自身重建为静态 html。由于我不能直接将此静态页面自动部署到 Firebase 托管,因此我倾向于提供静态文件。

那么,与使用 firebase 托管相比,在 firebase 函数中使用 Express.js 提供静态 html 内容有什么缺点吗?特别是在:定价、安全性和性能/速度方面。

标签: firebasegoogle-cloud-functionsfirebase-hosting

解决方案


我们在 Firebase 托管下托管了我们的网站 ( https://mfy.imnuxt ),它是使用 生成的,类似于您的next.js. 我们比较了许多其他静态托管站点,包括 Netlify、S3 等。Firebase 托管在性能上是最好的

尽管 Express 可以为您的静态文件提供服务,但不建议这样做。Firebase 内部使用 Nginx。Nginx 提供静态文件的速度非常快,而且它是多线程的。在 Nginx 中,它很容易配置 http2、gzip等(最近在 Node 10 中发布了完整的 http2 支持,在节点 js 中压缩文件也不是那么高效,因为节点是单线程的)

Firebase 托管的其他优势在于其边缘服务器、内置 CDNSSL等。您的站点副本部署在世界各地的多台服务器上,从而降低了延迟。我已经测试过Firebase CDN 与 CloudFlare,Firebase 再次是最好的

关于定价,Firebase 托管附带 10GB 带宽的免费计划。它应该对中小型网站有效。如果您的带宽使用率高于此,您可以选择“按需付费”。但是,如果您担心定价问题,您可以将 Firebase 托管与 CloudFlare CDN 结合起来,这样 CloudFlare 将覆盖大部分带宽


推荐阅读