gpt4 book ai didi

firebase - 有多少客户端连接到我的 Firestore?

转载 作者:行者123 更新时间:2023-12-03 16:07:52 28 4
gpt4 key购买 nike

Metrics Explorer in my Stackdriver Dashboard
我正在开发一个从 firestore 获取 341 个文档的 flutter 应用程序,经过 2 天的分析,我发现我的读取请求增加了太多。所以我在 上做了一个图表。堆栈驱动程序指标资源管理器 从中我了解到我的应用程序一次只读取 341 个文档,它是 firebase 控制台,它正在增加我的阅读量。

现在,说到困扰我的问题是什么,

1)当我们在控制台上看到数据时如何考虑读取以及如何减少读取请求?基本上有 341 个文档,但每当我刷新控制台时,它就会显示超过 600 次读取。

2)如图所示,有两种类型的文档读取'LOOKUP'和'QUERY',它们之间的确切区别是什么?

3)我使用单个实例从 Firestore 获取数据,当我打开我的应用程序时,图表显示 1 个活跃客户 这很酷,但在接下来的 5 分钟内,活跃客户的数量开始增加。

有人可以向我解释为什么会这样吗?
对于最后一个问题,我尝试禁用所有服务帐户,然后再次打开我的应用程序,但又得到了同样的结果。

 Firestore.instance.collection("Lectures").snapshots(includeMetadataChanges: true).listen((d){
print(d.metadata.isFromCache);//prints false everytime
print(d.documents.length);// 341
print(d.documentChanges.length);//341
});

这是我正在使用的片段。当应用程序启动时,它只运行一次。

最佳答案

我将尝试回答您的问题:

How reads are considered when we see data on the console and how can I reduce my read requests? Basically there are 341 docs but it is showing more than 600 reads whenever I refresh my console.



读取的考虑取决于您查询 Firestore 数据库的方式以及您从控制台访问此数据库的方式,因此使用 Firebase 控制台将导致读取,即使您让控制台打开以执行其他操作,当对数据库进行新更改时发生这些更改也会自动产生读取。并且从服务器读取的任何文档都将被计费。读取来自哪里并不重要。控制台应该包含在其中。

检查此 official documentation under the "Manage data"标题您可以看到有一条注释:“注意:在控制台中执行的读取、写入和删除操作将计入您的 Cloud Firestore 使用量。”

说如果你觉得这个有问题,可以联系 Firebase support直接获得更详细的答案。

但是,如果您检查 free plan of Firebase你可以看到你每天有 50K 的免费阅读。

我为此找到了一种解决方法(感谢 Dependar Sethi)
  • 为 Firestore 页面的 Usage 标签添加书签。 (所以你基本上
    “跳过”数据选项卡)
  • 以某种方式添加一个虚拟集合,以确保它是
    默认情况下加载的第一个集合(按字母顺序)
    Firestore 页面。

  • 你可以找到他的完整解决方案 here .

    此外,您可以优化您的查询,但是您只想使用 where() method 检索您想要的数据。和 pagination with Firebase

    As you can see in the picture there are two types of document reads 'LOOKUP' and 'QUERY', what's the exact difference between them?



    我想它们之间没有重要区别,但是“QUERY”正在获取实际数据(当您调用 data() 方法时),而“LOOKUP”正在获取这些数据的引用(不调用 data() 方法)。

    I am getting data from the firestore with a single instance and when I open my app the chart shows 1 active client which is cool but in the next 5 minutes, the number of active clients starts to increase.



    对于这个问题,考虑到您在 Stackdriver 中选择的指标,我可以看到 3 个连接的客户端。根据 decription of "connected client"指标:

    事件连接数。每个移动客户端将有一个连接。 admin SDK 中的每个监听器都是一个连接。每 60 秒采样一次。采样后,最长 240 秒内数据不可见。

    所以请检查:有多少手机连接到这个实例,你的应用中有多少听众。所有这些的总和就是您在 Stackdriver 中看到的实际连接客户端数。

    关于firebase - 有多少客户端连接到我的 Firestore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58456731/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com