java - 如何将延迟和离线的数据写入firebase实时数据库?
问题描述
我希望用户发送的数据在 10 分钟后到达 firebase 实时数据库。有捷径吗?我目前的方法非常昂贵。在我现在使用的方法中,我先将其发送到服务器。在服务器上等待 10 分钟后,我将其发送到 Firebase 实时数据库。有没有办法直接做到这一点?
解决方案
显然,即使用户在写入数据之前关闭应用程序,您也希望在 10 分钟后写入数据。
实现此目的的唯一方法是设置第二台服务器。
您的应用程序将数据写入第二台服务器,并附有在 10 分钟后将其发送到 Firebase 数据库的说明。
第二台服务器设置一个计划任务(或其他东西),在 10 分钟延迟后将数据写入 Firebase。
为了使其可靠,第二个服务器需要一个数据库来存储请求,以防它在有待发送的写入请求时崩溃并重新启动。然后当它重新启动时,它需要扫描它的表以查找任何应该发送的请求,然后发送它们。
在重新阅读您的问题时,似乎这可能是您已经实施的。(尽管您没有提到崩溃和恢复问题。)
这一切都相当奇怪和复杂,这让我想知道这是否是XY 问题的一个例子。难道你不能立即将数据写入 Firebase,并在数据中添加一个额外的属性来说明它何时变为活动状态吗?
推荐阅读
- c# - 为什么这个脚本可以在没有实例化的情况下访问另一个脚本?
- cmake - pkg_check_modules 无法解析,因为依赖项没有 .pc 文件
- c# - 为什么这个 C# 代码没有按预期运行?
- c# - 构建用于生产的角度应用程序时未加载图像
- arrays - 我无法在我的 C++ 代码中找到导致分段错误的原因
- python - 从 setup.py 安装时,无法在 Google Colab 中导入 Tensorflow 2.2.0rc2
- python-3.x - 计算赚取特定金额作为利息的时间
- c - 结构有问题,字符串 anf gtkwidget
- ruby-on-rails - 将对象移动到 DEEP_ARCHIVE 的更便宜的方法
- elasticsearch - 将参数从 Airflow 传递到 Logstash