【发布时间】:2019-10-30 06:00:59
【问题描述】:
我了解 Firestore 缓存和读取费用在这些情况下的行为方式。我不确定它是否正确。
如果我在一个集合中有 2000 个文档。此集合名称为“testCollection”。这些文档不会更改、更新或删除。 我的客户端是安卓,已经启用离线持久化,设备当前在线
1.
db.collection("testCollection").onSnapshot(function(doc) {});
2000 次读取充电和 这些文档被缓存。 然后重新打开应用程序并再次运行相同的代码
db.collection("testCollection").onSnapshot(function(doc) {});
另外 2000 次读取收费导致 Firestore 需要检查每个文档是否是最新的。 所以 2000+2000 读取收费
2.
我不确定这是如何表现的。 只需一起运行相同的代码
db.collection("testCollection").onSnapshot(function(doc) {});
db.collection("testCollection").onSnapshot(function(doc) {});
我认为是 2000 次读取收费,因为数据保持最新
3.
db.collection("testCollection").limit(300).onSnapshot(function(doc) {});
db.collection("testCollection").limit(800).onSnapshot(function(doc) {});
总共 1100 次读取已收费。因为它是不同的查询。
我是不是有什么误解或不对劲?
【问题讨论】:
标签: firebase google-cloud-firestore