我的应用在后台运行。如果app在后台运行,是否仍然与realtimeDB同时连接?或者,如果此应用程序暂时不使用realtimeDB,则不计算同时连接?
无论如何,如果算了,我能获得10万用户吗?
答案 0 :(得分:3)
只要listener
处于有效状态,您的应用就会连接到realtimeDB。如果你想停止听,你需要根据你的需要和活动周期删除听众。
对于Android
,您可以在onDestroy()
方法中使用此代码。
databaseReference.removeEventListener(valueEventListener);
希望它有所帮助。
答案 1 :(得分:2)
我正按顺序回答你的三部分问题,
Firebase数据库库在后端管理与数据库的连接,这会在应用程序启动时立即启动,这会开始计算您的同时连接,当此限制达到最大连接数限制为100k时,任何新的通过关闭应用程序或应用程序在指定的超时后退出或通过调用
强制关闭数据库连接,将关闭连接,直到现有连接中断为止 FirebaseDatabase.getInstance().goOffline()
然而,您可以通过使用FirebaseDatabase.getInstance().getReference(".info/connected")
处的侦听器来了解给定客户端是否已连接,但这可以在本地运行,并且不会显式连接到FirebaseDatabase云实例。可以阅读更多内容{{ 3}}
实现上述连接侦听器后,您将看到SDK动态管理它,如果没有连接侦听器且没有像.setValue()
这样的数据库操作,则连接会自动断开连接应用程序在最后60秒..,但ValueEventListners的存在将覆盖此并将确保与数据库的连续连接。再次这可以被覆盖,并且可以通过明确调用FirebaseDatabase.getInstance().goOffline()
达到10万个并发用户的最大限制;可以在here
中看到每个数据库的并发连接数限制为100,000 火焰和火焰计划。有关详细信息,请参阅定价常见问题解答。
如果您越过这个并进行扩展,则需要增加限制,您可以明确向Google Firebase小组询问Firebase Plans,他们会根据具体情况处理此问题,以确保您的应用可以根据需要进行扩展需要时..
什么是"同步数据库连接"?
同时连接相当于一个移动设备,浏览器 选项卡或连接到数据库的服务器应用程序。 Firebase施加压力很大 限制与您的应用同时连接的数量 数据库。这些限制适用于保护Firebase和我们的 滥用的用户。
Spark计划限制为100,无法提升。火焰和火焰 计划每个数据库的并发连接数限制为100,000。 如果您需要超过100,000个同时连接,请联系 Firebase支持。
此限制与您应用的总用户数不同, 因为您的用户不能同时进行所有连接。我们鼓励你 监控峰值同步数据库连接并升级或添加 如果需要,可以使用更多数据库。