在 Firebase 中缓存

Caching in firebase

我将我的应用程序托管在 firebase 中,并使用云功能从第三方获取数据 API。此云功能是 HTTP 触发的,并在客户端请求数据时运行。我想减少云函数调用(因为它目前在 Blaze 计划中),所以考虑在我的应用程序中添加缓存。

  1. 我可以在客户端(网络浏览器)和服务器端(Node.js)使用哪些缓存策略?
  2. 总的来说,我想减少云函数的调用以最小化成本,这样在每次客户端请求时,都不需要调用云函数,而是客户端可以从缓存中获取数据。
  3. 我是否应该使用 firebase 实时数据库来存储来自第三方的数据 API 并在一段时间内在 firebase 中更新它,以便数据是最新的?第三方数据不经常变化。
  4. 从实时数据库中获取数据(如上文第 3 点所述)而不是云函数调用最终是否会降低成本?

如果您 host your Cloud Function behind Firebase Hosting, you can write a cache header in every response and manage the cache behavior 的 Firebase 托管方式。允许从 Firebase Hosting 的 CDN 提供内容可能会显着减少您的函数执行次数,从而降低成本。