首页 > 解决方案 > node.js 中的 setInterval 是否在计算机入睡时开始运行?

问题描述

我正在尝试在 node.js服务器中获取一个 API,并每 3 小时使用 JavaScript 中的 setInterval 更新存储的数据。代码是这样的:(我使用 mongoDB 作为数据库)

mongoose.connect(
  constants.db,
  {
    useNewUrlParser: true,
    useUnifiedTopology: true,
    reconnectTries: 30000,
  },
  () => {
    app.listen(5000, () => {
      console.log("server is running");
      const time = 10800000; // for 3 hours
      setInterval(dataFetch, time);
      dataFetch();
    });
  }
);

问题是我想使用 heroku 免费网络托管计划,如您所知,在这种情况下,heroku 让服务器在 1 小时后休眠,直到它收到请求,我想确保在服务器休眠的情况下,这个代码做得很好。

请指导我处理这种情况。谢谢 :)

标签: javascriptnode.jsherokusetinterval

解决方案


推荐阅读