gpt4 book ai didi

firebase - firestore 中 onSnapshot 的性能成本是多少?

转载 作者:行者123 更新时间:2023-12-04 16:02:26 27 4
gpt4 key购买 nike

我正在设计一个包含(很多)文档的应用程序,这些文档共享给(可能很多)组。

我需要了解如何将文档更改从服务器推送到客户端,以便构建我的数据模型。

  1. 是否将对数据库的所有更改都推送到客户端(使用最少的数据)并且客户端下载已在 onSnapshot 中注册的内容?
  2. 远程服务器上是否有更新的过滤器,并且只将相关数据推送到客户端?

在模型 (1) 中,添加许多 onSnapshot(每个文档一个)的成本似乎很低。在模型 (2) 中,它可能很高,但它是服务器的负担?所有这些与 Firestore 定价模型有何关系(阅读计数)。

感谢您对此的任何关注...

最佳答案

其实,答案就在code :

/**
* A PersistentStream that implements the Listen RPC.
*
* Once the Listen stream has called the openHandler, any number of listen and
* unlisten calls calls can be sent to control what changes will be sent from
* the server for ListenResponses.
*/
export class PersistentListenStream extends PersistentStream< // ...

当我们创建一个 onSnapshot 时,查询被发送到服务器,服务器记住客户端感兴趣的内容并更新它的通知过滤器。

这意味着我们处于场景 #2 中,它解释了服务器打开连接的成本。

这也意味着我们不关心我们创建了多少onSnapshot。对于客户端,为我们获得的每个文档执行一次 onSnapshot 没有性能问题(但在 Firestore 中有一个 Read cost 为此)。

关于firebase - firestore 中 onSnapshot 的性能成本是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50130488/

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