【问题标题】:Firestore lecture operations countFirestore 讲座操作计数
【发布时间】:2020-04-27 10:18:26
【问题描述】:

我想了解 Firestore 如何计算读取操作数。

firestore lecture operations

我有一个用于移动设备的数据库和一个应用程序,因此要使 Firestore 脱机,无需执行任何操作。 当我的应用程序打开时,用户从 | 的集合中接收数据。 n |文件。

我想了解,即使数据库没有变化,使用互联网打开应用程序的用户是否会从数据库执行读取操作? 还是每次访问都没有变化,因为数据还在缓存中,所以不添加读操作?

【问题讨论】:

    标签: java android firebase google-cloud-firestore nosql


    【解决方案1】:

    如果用户在互联网上打开应用程序,即使数据库没有变化,也会从数据库执行读取操作?

    如果您使用get() 调用,Firestore SDK 将始终尝试从服务器获取数据,无论数据是否更改。 只有设备离线时,您才能使用缓存中的数据。但是,如果您尝试使用SnapShotListener 实时监听变化,根据官方文档:

    初始状态可以直接来自服务器,也可以来自本地缓存。如果本地缓存中有可用的状态,查询快照将首先填充缓存数据,然后在客户端赶上服务器状态时使用服务器数据进行更新。

    换句话说,如果服务器说您没有新添加/更新/删除的文档,则您从缓存中获取数据。但是,关于the duration of time you can get the data from cache,您还应该注意其他一些事情:

    此外,如果侦听器断开连接的时间超过 30 分钟(例如,如果用户下线),您将被收取读取费用,就像您发出了全新的查询一样。

    Another possible charge might also come from:

    对于您执行的每个查询,即使查询未返回任何结果,也需要读取一个文档的最低费用。

    但是根据 Firestore 的设计,所有这些费用都是正常的。

    【讨论】:

    • 嗨,图西里奥!我可以帮助您了解其他信息吗?如果您认为我的回答对您有所帮助,请考虑通过单击左侧投票箭头下方的复选标记(✔️)来接受它。应将颜色更改为绿色。我真的很感激。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2022-11-21
    • 1970-01-01
    • 1970-01-01
    • 2012-11-24
    • 2018-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多