【问题标题】:Does Firestore not charge for documents that are cached and unchanged in a Read query with persistence enabled?Firestore 是否不对启用持久性的读取查询中缓存且未更改的文档收费?
【发布时间】:2021-03-02 02:30:04
【问题描述】:

我的假设是 Firestore 在评估读取使用情况时不会考虑客户端缓存。但是,当我在我的应用程序中启用持久性时,似乎我可以无休止地运行相同的查询,而我的使用指标没有任何变化。我一遍又一遍地测试了这一点 - 当持久性被禁用时,我看到使用指标上升。

鉴于我已经完成的测试量,我觉得我应该能够安全地声明 Firestore 必须识别我的本地缓存并且只对更新文档的读取收费。但是,我在任何地方都找不到与此相关的文档,并且我已经梳理了这些文档。我当然会认为,如果 Google 不向我收取这些缓存读取的费用,他们会想强调这种好处,而他们实际上只强调 enablePersistence 作为离线好处——所以我很困惑。

有人对这里发生的事情有一些了解吗?

  • 示例启用持久性:firebase.firestore().enablePersistence()
  • 查询示例:myCollection.where(condition).get()

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    据此documentation

    离线数据持久化功能会缓存您的应用正在使用的 Cloud Firestore 数据的副本,因此您的应用可以在设备离线时访问数据

    所以,很明显,只有在服务器上调用 get() 来读取文档时才会收费,这在 answer 中提到了

    另外,请注意

    1. Android 和 iOS 默认启用Offline Persistance
    2. The pricing model for Cloud Firestore

    【讨论】:

    • 但这并没有让我清楚。我知道如果我的应用程序离线,我只会访问缓存,但我的应用程序没有离线。我知道我已经缓存了数据,但我可以看到 XHR 查询正在通过网络发送。
    • 您正在开发的平台是什么?我猜是网络
    猜你喜欢
    • 1970-01-01
    • 2019-08-07
    • 2020-03-21
    • 1970-01-01
    • 2019-07-04
    • 2018-07-07
    • 2020-02-05
    • 2020-10-02
    相关资源
    最近更新 更多