Firebase Realtime Database使用Node.js每秒更新一次

时间:2019-06-08 18:49:16

标签: node.js firebase firebase-realtime-database cron

我正在尝试使用Firebase实时数据库和Node.js创建拍卖门户。我正在存储拍卖开始,结束时间和剩余时间值,这是通过Node setInterval()函数进行更新的。客户观察剩余时间并随着数据库的更新而更新。

除CPU使用率已达到顶峰外,其他所有方法都可以正常工作。有什么更好的解决方案?

以下是我的代码:

var query = usersRef.orderByKey();

query.on('value', function (snap) {

  setInterval(function () {

    snap.forEach(function (item) {

      var current_item = item.val();

      var startDate = current_item.sdate;
      var endDate = current_item.edate;

      var start_ts = moment(moment(), "YYYY/MM/DD H:mm:ss");
      var end_ts = moment(endDate, "YYYY/MM/DD H:mm:ss");

      var duration = moment.duration(end_ts.diff(start_ts));

      var remainT = moment.utc(duration.as('milliseconds')).format("DD:HH:mm:ss")

      var hopperRef = usersRef.child(item.key);
      hopperRef.update({
        "rtime": remainT
      });

    });

    console.log("Updated");    

  }, 1000);

});

0 个答案:

没有答案