首页 > 解决方案 > 如何将延迟和离线的数据写入firebase实时数据库?

问题描述

我希望用户发送的数据在 10 分钟后到达 firebase 实时数据库。有捷径吗?我目前的方法非常昂贵。在我现在使用的方法中,我先将其发送到服务器。在服务器上等待 10 分钟后,我将其发送到 Firebase 实时数据库。有没有办法直接做到这一点?

标签: javaandroidfirebasefirebase-realtime-database

解决方案


显然,即使用户在写入数据之前关闭应用程序,您也希望在 10 分钟后写入数据。

实现此目的的唯一方法是设置第二台服务器。

  • 您的应用程序将数据写入第二台服务器,并附有在 10 分钟后将其发送到 Firebase 数据库的说明。

  • 第二台服务器设置一个计划任务(或其他东西),在 10 分钟延迟后将数据写入 Firebase。

为了使其可靠,第二个服务器需要一个数据库来存储请求,以防它在有待发送的写入请求时崩溃并重新启动。然后当它重新启动时,它需要扫描它的表以查找任何应该发送的请求,然后发送它们。

在重新阅读您的问题时,似乎这可能是您已经实施的。(尽管您没有提到崩溃和恢复问题。)


这一切都相当奇怪和复杂,这让我想知道这是否是XY 问题的一个例子。难道你不能立即将数据写入 Firebase,并在数据中添加一个额外的属性来说明它何时变为活动状态吗?


推荐阅读