美文网首页
pm2(cluster)下的Nodejs,如何实现定时任务的维护

pm2(cluster)下的Nodejs,如何实现定时任务的维护

作者: BillM | 来源:发表于2020-03-11 23:20 被阅读0次

    说一下场景
    举例:
    某个功能需要在线创建定时任务,并可以修改任务的执行时间,定时任务修改时间之后如何立即停掉旧的定时任务?

    说一种解决思路参考吧,有更好的思路求分享!!

    用pm2起cluster,固定线程起定时任务,定时任务当然要将执行频率等关键数据入库。

    借助redis记录关键操作的信息:比如新增入库了一个任务,某个任务的执行频率修改了删除了某个任务等等。

    当cluster中的任一线程接收到更新定时任务的请求时,在redis中缓存关键信息。

    再起一个定时任务监控redis的关键指标,其实就是扫描定时任务是否有变化,如果有变化当将前线程干掉,pm2会复活该线程继而重新按照库中最新的任务数据初始化定时任务。

    此方法不认为是最好的解决方法,如果有更好的思路请指教。

    相关文章

      网友评论

          本文标题:pm2(cluster)下的Nodejs,如何实现定时任务的维护

          本文链接:https://www.haomeiwen.com/subject/pjwkjhtx.html