繁体   English   中英

定期在Node.js应用中更新数据

[英]Update data at intervals in nodejs app

我使用nodejs制作了一个Web应用程序,该应用程序从Amazon获取数据。 我想使这样的应用程序每隔一定的时间工作一次。 我希望进行-15分钟的更新(将用于实时库存观察)-每日更新(将用于一些不经常更改的其他数据)

使用setInterval是最佳选择吗? 我在某处读到setInterval会导致问题??

我还有什么选择?

首先,使用setInterval进行15分钟的更新是可以接受的,尽管如果您希望设置将在一周之内发生的事件,那么最好使用Node Schedule https://github.com/node-schedule/node之类的东西-时间表

这样做的主要原因是,将日期设置为遥远的将来或每周设置为setInterval是,如果您有基于日历的事件或每两周发生一次,或者事件偏离正常计划的时间,则基于时间的计算有时不是最佳的。 使用“节点计划”,您可以根据日和日历事件设置事件,因此可以根据情况将两者混合。

与整个解决方案有关:如果开始水平缩放或环境(例如Heroku)重新启动服务器,或者如果服务器在特定时间未运行,则要在下一次服务器启动时进行设置,则setInterval将是一个问题。 然后,您将不得不使用数据库。 该数据库将保存上一个请求的时间,通过该时间您可以计算下一个请求的时间Jonas Lochmann

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM