每周末午夜运行一个函数?

问题描述 投票:0回答:1

所以我想每周末运行一个函数,周六凌晨12点.我在这里搜索答案,我发现有些人建议使用超时,但这不是我真正想要的,因为我认为它不能解决我所遇到的问题。

所以,当服务器启动时,我应该从数据库中得到一个日期,比如说是2252020星期五(这应该是每个周末都会发生的)。

我想让服务器在周六2352020午夜进行一些请求计算。

我在想做这样的事情,在服务器上运行一个while循环被认为是一个坏主意吗?

while(true){

if(current_date==next_week){
//do stuff that i want ...

next_week=next_week+ 1 week

}

//update current_date
} 

在服务器上运行一个while循环是个坏主意还是个好主意? 如果是个坏主意,有什么更好的方法来解决这个问题吗?

javascript node.js logic server-side
1个回答
2
投票

你应该使用node模块中的 辅助工作 管理; 人头马 是一个不错的npm模块,也是一个很好的模块。节点计划 一样的道理,用 timeout 函数在这里不是正确的选择,长期运行的过程应该使用写好的模块来管理,并利用操作系统系统调用和API。


1
投票

你可以尝试使用cron job来设置运行函数的时间。

从终端运行:crontab -e

然后用这种格式设置时间。* * * * *

1st*: minute (0-59), 
2nd*: hour (0-23),
3rd*: day of month (1-31),
4th*: month (1-12),
5th*: day of week (0-6) (Sunday=0 or 7)
© www.soinside.com 2019 - 2024. All rights reserved.