Java Firestore讲座操作计数
我想了解Firestore如何计算读取操作 我有一个用于移动设备的数据库和应用程序,所以要让Firestore离线,无需做任何事情。 当我的应用程序打开时,用户从一组| n |文档接收数据 我想了解,即使数据库中没有任何更改,使用internet打开应用程序的用户是否会从数据库执行读取操作? 或者每次访问时,如果没有更改,则不会添加读取操作,因为数据仍然驻留在缓存中 如果用户在打开internet的情况下打开应用程序,即使数据库中没有任何更改,也会从数据库执行读取操作 如果您正在使用Java Firestore讲座操作计数,java,android,firebase,google-cloud-firestore,nosql,Java,Android,Firebase,Google Cloud Firestore,Nosql,我想了解Firestore如何计算读取操作 我有一个用于移动设备的数据库和应用程序,所以要让Firestore离线,无需做任何事情。 当我的应用程序打开时,用户从一组| n |文档接收数据 我想了解,即使数据库中没有任何更改,使用internet打开应用程序的用户是否会从数据库执行读取操作? 或者每次访问时,如果没有更改,则不会添加读取操作,因为数据仍然驻留在缓存中 如果用户在打开internet的情况下打开应用程序,即使数据库中没有任何更改,也会从数据库执行读取操作 如果您正在使用get()
get()
调用,Firestore SDK将始终尝试从服务器获取数据,无论数据是否更改。只有当设备脱机时,才能使用缓存中的数据。但是,根据官方文档,如果您试图使用SnapShotListener
实时侦听更改:
初始状态可以直接来自服务器,也可以来自本地缓存。如果本地缓存中存在可用状态,则查询快照最初将使用缓存的数据填充,然后在客户端了解到服务器的状态后使用服务器的数据更新
换句话说,如果服务器说您没有新添加/更新/删除的文档,那么您将从缓存中获取数据。但是,您还应注意以下事项:
此外,如果侦听器断开连接的时间超过30分钟(例如,如果用户脱机),您将被收取读取费用,就像您发出了一个全新的查询一样
:
对于您执行的每个查询,即使查询不返回任何结果,也至少要收取读取一个文档的费用
但根据Firestore的设计,所有这些费用都是正常的。嗨,tusilio!我能帮你了解其他信息吗?如果你认为我的答案对你有帮助,请考虑通过点击复选来接受它。✔️) 在投票箭头的左边。应该换成绿色。我真的很感激。谢谢!