java - Firebase 实时数据库延迟
问题描述
我正在为我的应用程序使用 firebase 实时数据库。这很棒,但我在第一次将数据从应用程序写入 Firebase 时遇到了几秒钟的延迟。意味着每次我启动应用程序时,将数据发送到 Firebase 需要 2 秒的时间。之后,它以极快的速度运行良好。我知道这在任何方面都不是很大的延迟,但就我而言,我非常需要数据传输和立即获取。有什么办法可以减少这种延迟?提前致谢。
解决方案
第一次从代码访问 Firebase 实时数据库时,SDK 必须建立与服务器的连接。这涉及多个步骤,仅在建立第一个连接时才需要。这解释了为什么第一次连接可能需要一些时间,而且实际上它需要多几秒钟的情况并不少见。
您无法在代码中做任何事情来提高实际连接速度。这增加了您的带宽和延迟(我假设您对更改不感兴趣)以及 SDK 和服务器(您无法更改)。
您所能做的就是在应用程序的生命周期中尽早开始连接,而不是等到您需要读取/写入数据时才开始连接。例如,考虑.info/connected
在您的应用首次启动时添加一个监听器。
推荐阅读
- javascript - 按下按钮时传递值
- php - PHP ODBC 数据类型不匹配 (MS Access)
- javascript - 用于 html 内文本的 javascript 荧光笔
- java - AspectJ、SpringAOP、Aspect 运行两次
- r - 根据现有变量的值创建一个新的指标变量
- android - 手机深度睡眠时与服务器通信
- c++ - 为什么我们在访问者模式中需要 accept() 以及为什么我们不能直接调用 visitor.visit()?
- c - 为什么 '?' 和 '\?' 在 C 中给出相同的输出?
- python - 我有一个对应于 2018 年第 1 周的 ISO 8601 周数(例如:201801)。pyth 中的最佳方法是什么
- vba - 如何在 Outlook 中添加消息框以发送按钮?