【问题标题】:Firestore pricing on duplicate listeners重复侦听器的 Firestore 定价
【发布时间】:2020-04-08 02:19:52
【问题描述】:

如果我在代码的不同位置为同一个文档创建多个 onSnapshot 侦听器,我会被收费一次(一个文档)还是多次(针对每个侦听器)。

围绕 Firestore 编写一个包装器是否有意义,或者它是内置的吗?

【问题讨论】:

    标签: flutter google-cloud-firestore


    【解决方案1】:

    根据documentation

    Cloud Firestore 允许您收听查询结果并获取 查询结果变化时实时更新。

    当您收听查询结果时,您需要为阅读付费 每次添加或更新结果集中的文档时。你是 当从结果集中删除文档时,还收取读取费用 因为文件变了。 (相反,当一个文档是 已删除,您无需为阅读付费。)

    此外,如果监听器断开连接超过 30 分钟(对于 例如,如果用户离线),您将被收取阅读费用 如果您发出了全新的查询。

    您之后决定做什么将在很大程度上取决于您的用例和您的应用程序需求。

    【讨论】:

    • 是的,我知道。问题在于库本身是否在这方面进行了优化,或者两次调用 onSnapshot 是否会导致两次读取。我想这是因为否则它会很愚蠢,但到目前为止我找不到任何明确的答案。
    • 嗨@CiriousJoker,感谢您的进一步解释。如果我正确理解了您的问题,则每次文档读取操作只需向您收取一次费用 - 您将只有 x observables 根据 documentation 监听任何更改的相同文档参考。因此,您将对服务器进行一次调用,并且只需为一次读取操作付费;但是,如果您的文档发生更改,您肯定会为此付费。
    • 你能澄清一下吗?同一应用程序中同一文档的 2 个侦听器会产生 1 个“实际”侦听器,对吗?跨不同应用程序的同一文档的 2 个侦听器会产生 2 个“实际”侦听器,对吗?因此,每当文档更改时,我都会根据“实际”听众收费?另外,你的来源是什么?
    • 我猜,如果听众在同一个应用程序中,应该只有一次收费。但这取决于实施,它应该考虑到这一点并且只收费一次。我一直在看一些“听”Node.js Firestore client 代码;你可能会发现一些有趣的东西here
    猜你喜欢
    • 1970-01-01
    • 2021-07-12
    • 2019-07-31
    • 2023-03-19
    • 2020-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-07
    相关资源
    最近更新 更多