【问题标题】:Firebase simultaneous realtime connections to my databaseFirebase 同时实时连接到我的数据库
【发布时间】:2017-07-24 15:15:07
【问题描述】:

我在 Firebase 中有免费飞机 - 我有 100 个同时实时连接。 但我不明白一件事: 现在,没有人连接到我的应用程序,并且在 Firebase 中 - 据说我有 3 个连接。那是什么意思? 我一般有 100 个连接还是最多 100 个同时实时连接?

我希望有人向我解释它是如何工作的。

谢谢

【问题讨论】:

  • 不太清楚你在这里问什么。您最多有 100 个同时连接,这是限制。
  • @PieterLaebens 同时连接?现在,没有人连接到数据库,并且写着我有 3 个连接。我试图了解什么是 Firebase 中的“同时连接”?
  • 我想一个连接的例子是每当DatabaseReference.setValue()被调用。很高兴知道。
  • 我也有同样的问题。我只是在本地运行应用程序/反应,firebase 数据库使用控制台显示了一个很大的不同数字。如果有人知道发生了什么以及如何关闭所有 Firebase 数据库连接,那就太好了。
  • 请问,这包括从实时数据库中读取数据吗?即我有一个布尔值,如果将其应用为 100 Sim,我会从我的 android 项目中读取该值。康?如果我有 200 个用户同时使用该应用程序会带来什么问题?

标签: firebase firebase-realtime-database


【解决方案1】:

FAQ 有一项解释什么是连接:

同时连接相当于连接到数据库的一个移动设备、浏览器选项卡或服务器应用程序。 Firebase 对同时连接到应用数据库的数量施加了硬性限制。这些限制旨在保护 Firebase 和我们的用户免受滥用。

Spark 计划限制为 100,无法提高。 Flame 和 Blaze 计划限制每个数据库同时连接 200,000 个。

此限制与您的应用的用户总数不同,因为您的用户不会同时连接。如果您需要超过 200,000 个同时连接,请阅读使用多个数据库进行扩展。

【讨论】:

【解决方案2】:

我向 Firebase 支持人员进行了询问,以了解增加最大同时连接数的步骤是什么,或者至少了解他们如何确定谁有资格增加。诚然,100,000 个同时连接可能是一个很难突破的限制,我怀疑他们不愿意轻易做到这一点,因为一个简单的事实是,尽管我来回发送了三封电子邮件,其中我的问题非常清楚和直接,我从来没有得到我的问题的答案。

相反,我一直得到的两个建议是:

  1. 分片您的数据。根据docs(强调我的):

同时连接相当于一个移动设备、浏览器 选项卡或连接到数据库的服务器应用程序。这不一样 您的应用的用户总数,因为您的用户并非全部 立即连接。例如,每月有 1000 万活跃用户的应用 用户的并发连接数通常少于 100,000 个。您的 最大同时连接数取决于您的总用户数和 用户在您的应用中花费的平均时间。

但是,如果您需要扩展超出此限制,请尝试使用多个 数据库

  1. 尝试 Cloud Firestore,因为它将支持 automatic scaling(强调我的):

缩放将是自动的。

完全自动缩放(之后 beta),这意味着您不需要将数据分片到多个 实例。

【讨论】:

  • 您好,在我们公司,我们面临着同样的问题 - “是否可以升级 sim.conns. 的数量?”。我想知道,距您最初的询问已经过去了 3 个月,您是否有关于这个问题的更多信息?
  • 恐怕不行,对不起
  • 请问,这包括从实时数据库中读取数据吗?即我有一个布尔值,如果将其应用为 100 Sim,我会从我的 android 项目中读取该值。康?如果我有 200 个用户同时使用该应用程序会带来什么问题?
【解决方案3】:

同时连接相当于一个移动设备、浏览器 选项卡或连接到数据库的服务器应用程序。这不一样 您的应用的用户总数,因为您的用户并非全部 立即连接。例如,每月有 1000 万活跃用户的应用 用户的并发连接数通常少于 200,000。您的 最大同时连接数取决于您的总用户数和 用户在您的应用中花费的平均时间。

来源:Firebase Documentation on Realtime Database Limits

问:我一般有 100 个连接还是最多 100 个同时实时连接?

A : 100 个同时实时连接。

【讨论】:

  • 这是否意味着,在某一时刻我可以有 100 个正在进行的数据库请求?因为我可以看到,Firebase 使用套接字来做事,而且我订阅了数据库数据更改。 1 次订阅是否会随着时间的推移计算在内,还是仅计算我对数据的请求?
【解决方案4】:

我知道为什么!

3/100 表示在时间段内,您已达到 3 个连接作为峰值(不是实时数据!)

将时间段改为过去60分钟,即可看到实时数据图表! (并查看连接值旁边的 peak 标签)


仅供参考,即使这些数据现在是最新的,当您手动更改连接号(通过关闭选项卡或其他编码内容)时,您仍然需要等待一点时间(30秒,一分钟?不确定)在刷新图表并查看更新数据之前。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-28
    • 2021-08-24
    • 2022-01-03
    • 2018-08-21
    • 2019-03-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多