Firebase Firestore 与侦听器的成本

2024-02-11

有几个与消防成本相关的问题,但我找不到能够澄清我脑海中问题的问题。

我有两个案例,我想知道每种情况下的估计成本、文档读取次数。

假设我有一个显示 10 个用户的一页应用程序。打开应用程序会将侦听器附加到 userList 集合并侦听该集合中的 10 个文档,然后关闭应用程序将侦听器与 firestore 分离。

Case 1:如果任何文档都没有更新,我会打开并关闭该应用程序,然后再次打开它30分钟内。文档的阅读计数是多少? 10、20 还是其他?

Case 2:我打开并关闭应用程序;一个文档已更新,我再次打开它30分钟内。文档的阅读计数是多少? 11、21 还是其他?


这取决于“关闭应用程序”的含义。

如果您的侦听器由于网络连接丢失而被切断,但是应用程序进程仍在运行,当网络恢复时,监听器将自动重新连接。如果网络在 30 分钟内恢复,您无需支付更新费用。如果网络在 30 分钟后恢复,则您需要为新查询付费。

如果您的听众被切断因为应用程序进程被操作系统终止,稍后当应用程序再次启动时重新连接,您将需要为另一次查询付费。

如果应用程序只是在后台运行但未终止,并且侦听器在后台仍然处于活动状态,则行为没有变化,但在应用程序进程最终失去网络之前,您仍然需要在添加文档期间支付文档更新费用并被完全终止。

如果您的代码删除侦听器并再次添加它,您将需要为新查询付费。

您必须弄清楚哪些情况适用。 SDK 不跟踪用户的意图。它只是跟踪网络的行为,并受到操作系统管理的进程状态的影响。用户“关闭应用程序”的操作可能涉及许多并非立即显而易见的细节。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Firebase Firestore 与侦听器的成本 的相关文章

随机推荐

  • rsync 无法解释的错误(代码 129)

    我正在尝试将数据从一台服务器 rsync 到另一台服务器 大约有大约 1 1T 的数据 但是当我进行 rsync 时 我在传输过程中遇到以下异常 从而终止了进程 rsync 错误 rsync c 541 sender 3 0 7 出现无法解
  • uint8 的冗余转换不适用于 GCC 4.8.1

    我有一些遗留代码 通常是使用 GCC 3 4 4 为 PowerPC 编译的 现在我正在移植一些我想用 MinGW 的 GCC 4 8 1 编译的代码部分 在代码中的某个时刻我发现了这一点 Prototypes void foo uint8
  • 如何在不使用全局或会话变量的情况下重用查询结果以更快地导出到 csv 和 xls

    我有一个功能 最初以 HTML 报告 显示结果 然后 可以导出为 CSV 和 XLS 这个想法是重用用于呈现 HTML 的查询的结果 导出相同的记录 而无需再次重新运行查询 最接近的实现是这样的 将结果存储在全局变量 last consul
  • 如何在不移动 X、Y 位置的情况下缩放视图?

    我有一个RadioGroup我正在尝试缩小规模 因为它太大了 所以我用setScaleX and setScaleY 并将其缩小 它可以工作 但问题是当我缩放视图时 视图会改变 X 和 Y 位置 我希望它在缩放后保持相同的左上角坐标 如何让
  • 检查数字中是否有“数字”零的最快方法?

    检查数字中是否包含数字 0 的最快方法是什么 我需要开发一种快速方法 因为我必须在 20 美元秒内对接近 10 9 美元的数字执行这些检查 将其转换为字符串后搜索零是否有效 除以 2 的幂以外的数字 无论数字是多少 都将执行相同次数的运算
  • Swift 4:使用数组中的数据进行分页,以便在用户滚动时进行 API 调用

    背景 在我的应用程序中 我存储了一堆对象 ID 我使用这些 ID 进行批量 API 调用 API 将每次调用限制为 10 个 ID 号 该数据呈现在 UITableView 上 用户可以添加和删除对象 这会在数据库中添加或删除对象 ID 我
  • 重新启动应用程序时出现内存不足错误(Android)

    我正在开发一款使用 5 个大约 900x600 的大图像的游戏 当我退出游戏 按后退按钮 然后尝试启动游戏时 出现以下错误 12 29 15 59 16 633 E AndroidRuntime 18642 FATAL EXCEPTION
  • 在C#中,如何解析主机的IP地址?

    如何动态获取服务器 要连接的PC 的IP地址 系统 Dns GetHostEntry http msdn microsoft com en us library system net dns gethostentry aspx可用于将名称解
  • 使用 Convert_alpha 在 Pygame 中使图像背景透明

    我试图在 Pygame 脚本中使图像的背景透明 现在我的游戏背景是黑色的 而不是透明的 我在其他地方读过我可以使用的convert alpha 但似乎不起作用 这是我的代码 相关部分 import PIL gameDisplay pygam
  • 添加到 slack 与使用 slack 登录

    我已将 添加到 Slack 按钮添加到我的 Web 项目中 它工作得很好 就像交换访问令牌的代码并重定向到我选择的 URL 一样 现在 我对 使用 Slack 登录 按钮有点困惑 我知道它用于登录个人成员 那么它会要求他们提供组织电子邮件和
  • COUNT(*) 什么时候返回 NULL?

    你好 我有一个经常写信的同事ISNULL COUNT 0 但我一直以为COUNT 永远无法返回NULL 但后来我搜索了互联网 我的发现让我能够编写这段小代码 create table t1 val1 varchar 50 select co
  • 如何在NativeScript中访问android的R对象?

    我正在尝试访问 Android 的R我用 Angular 在 NativeScript 中尝试了一个对象 但我没有取得任何成功 说明here https www nativescript org blog using android bac
  • 如何在Anaconda下使用非mkl NumPy?

    Anaconda Python 发行版使用针对 Intel MKL 库编译的 NumPy 和相关包 而不是 标准 NumPy 如何在特定 conda 环境上将 Anaconda 与 标准 NumPy 一起使用 不幸的是 目前还不能选择使用其
  • 为什么我的调试器因仅指向 main.js 的链接而损坏

    我正在努力调试我的角度应用程序 这是我继承的一个应用程序 并努力寻找它无法工作的原因 当我尝试调试我的项目时 打开 chrome 调试器 我得到的只是对 main js 的引用 当我单击这些时 它不会将我带到正确的源代码行 正如评论中指出的
  • 如何将数据库中的所有表更改为UTF8字符集?

    我的数据库不是 UTF8 我想将所有表转换为 UTF8 我该怎么做 对于单表 你可以这样做 ALTER TABLE tab CONVERT TO CHARACTER SET utf8 COLLATE utf8 unicode ci 对于整个
  • ASP.net MVC 支持带有连字符的 URL

    有没有一种简单的方法可以让 MvcRouteHandler 将传入 URL 的操作和控制器部分中的所有连字符转换为下划线 因为方法或类名称中不支持连字符 这样我就可以支持诸如 example com test page edit detai
  • PHP - 最轻量级的 psr-0 兼容自动加载器

    我有一个小型应用程序 我需要一个自动加载器 我可以轻松地使用 symfony2 类加载器 但这似乎有点矫枉过正 是否有稳定且超轻量的 psr 0 自动装载机 你要求非常轻量 让我们这样做吧 Timothy Boronczyk 写了一个很好的
  • ASP.NET MVC3 - 使用 DependencyResolver 和温莎城堡:为什么?

    有人能为我点亮一点光吗 我的网站全部使用温莎城堡运行 我有一个控制器工厂以及控制器和服务的安装程序 一切都很好 现在我刚刚创建了一个IDependencyResolver实现类称为WindsorDependencyResolver直接实施
  • iOS 8 远程通知 - 我什么时候应该调用 registerForRemoteNotifications()?

    正如苹果关于推送通知的官方信息页面所述 设备令牌可能会更改 因此您的应用程序需要重新注册每次启动时 我试图理解他们所说的 每次启动 是什么意思 这是否意味着我必须在 AppDelegate 中的 didFinishLaunchingWith
  • Firebase Firestore 与侦听器的成本

    有几个与消防成本相关的问题 但我找不到能够澄清我脑海中问题的问题 我有两个案例 我想知道每种情况下的估计成本 文档读取次数 假设我有一个显示 10 个用户的一页应用程序 打开应用程序会将侦听器附加到 userList 集合并侦听该集合中的