当前位置: 首页 > 知识库问答 >
问题:

Firebase实时数据库-可扩展100,000个并发连接

屈星腾
2023-03-14

我目前正在开发的应用程序需要可伸缩的实时通信。我们一直在研究和试用Firebase实时数据库和FireStore。Firebase实时数据库似乎已经比较成熟并经过测试,而firestore还处于测试阶段,这也是我们倾向于实时数据库的原因。

是否有一种更简单的方法来扩展超过100.000个用户,或者是否有可能增加单个Firebase实时数据库的并发连接量?对我来说,如果你需要做这么多的“负载”来平衡自己,那么使用Firebase似乎几乎是一种浪费。

共有1个答案

归翔
2023-03-14

100k并发连接是Firebase实时数据库的硬上限。

您用两步连接描述的方法非常地道。第一步通常相当简单。事实上,对于许多应用程序来说,这是他们认证流程的一部分,或者基于结果。例如,许多应用程序将用户的碎片建立在其UID的哈希基础上。

在您的情况下,您可以在用户注册时将用户区域作为自定义声明注入到他们的令牌中。然后,当他们登录时,你会得到这个声明,并可以将他们重定向到他们的碎片。您还可以在客户机首次连接时将碎片信息保存在客户机中,这样您只需为每个客户机/设备确定一次。

 类似资料:
  • 在我的项目中,我使用实时数据库以及Firestore数据库。当一个文档被添加到Firestore数据库中的特定集合时,我的云函数会触发。然后该函数写入我的实时数据库以更新一些统计信息。我注意到,即使没有用户连接到我的实时数据库,当云函数写入实时数据库时,并发连接的数量也会增加。这是否意味着我的云功能被视为并发连接,并将减少可以同时连接到我的实时数据库的用户数,因为有100k并发连接的限制?

  • 我在一个Android应用程序中使用Firebase数据库,每次用户启动时,我都会在数据库中存储一些值,为此我会执行以下操作: 正如您在子方法中看到的,如果称为“usrId”,它将创建usrId目录,并在其中添加所有neccesary信息。但是我想为每个用户创建目录,所以我尝试传递usrId变量作为参数。但它不起作用。当我调试代码时,调试器说本地var usrId无法识别,我的问题是如何在Fire

  • 我正在模拟一个银行系统,其中我有10万个交易要运行。每种类型的事务实现runnable,我有各种类型的事务可以发生。 是一个运行库数组。 理想情况下,下面的代码可以解决我的问题: 每次运行此事务时,只有一个帐户被锁定,剩下9个帐户可供处理。为什么JVM不再处理任何线程,而是挂起直到这个长事务完成? 下面是一个指向该项目的简化版本的链接,以演示该问题:project

  • 问题内容: 我正在构建一个Chrome扩展程序,该扩展程序仅适用于我工作的公司内部的人员。该扩展需要输入-可以通过对共享的MySQL DB服务器的简单查询生成输入(所有员工都可以以只读权限访问该服务器)。 问题是-由于扩展是所有客户端(主要是Javascript)-访问数据库和运行查询的最简单方法是什么?我是否必须创建一个针对扩展名的php / java(/ …)服务? 问题答案: 您必须创建一个

  • 问题内容: 我们正在使用SQL Server 2008,其中一项要求是在为系统定义的实体上具有可扩展的用户定义属性。例如,我们可能有一个名为Doctor的实体,我们希望系统管理员能够定义通常不在系统中的其他属性。这些属性很可能是链接父表或联接表的查询条件所必需的。 将有定义属性(名称,描述,类型)等的表,但是我的问题是实际数据值的存储。 我不是DBA(只是一个假装成程序员的DBA),但我首先想到的

  • 实时数据库触发器在写入创建时是排队还是线程化?