Javascript 在特定时刻调用NodeJs函数
有没有一种方法可以自动执行函数,并使用Node.Js在特定时刻调用它们?更准确地说,我想用NodeJS创建一个提醒。当我收到用户的日期时,我必须发送通知提醒他/她一些事情 我知道setTimeout()函数,但当我有大量的用户数据库时,这真的是个好主意吗Javascript 在特定时刻调用NodeJs函数,javascript,node.js,task,Javascript,Node.js,Task,有没有一种方法可以自动执行函数,并使用Node.Js在特定时刻调用它们?更准确地说,我想用NodeJS创建一个提醒。当我收到用户的日期时,我必须发送通知提醒他/她一些事情 我知道setTimeout()函数,但当我有大量的用户数据库时,这真的是个好主意吗 多谢各位 您正在寻找的被称为调度程序或cron作业(其来源于Linux操作系统) 在NodeJS中,您可以找到实现相同想法的方法。您正在寻找的被称为调度程序或cron作业(其来源于Linux操作系统) 在NodeJS中,您可以找到实现相同想法的
多谢各位 您正在寻找的被称为调度程序或cron作业(其来源于Linux操作系统)
在NodeJS中,您可以找到实现相同想法的方法。您正在寻找的被称为调度程序或cron作业(其来源于Linux操作系统)
在NodeJS中,您可以找到实现相同想法的方法。您可以使用
setTimeout()
并将所有工作保留在服务器中,但对于大量用户,您不一定要为每个用户设置超时。您真正需要的只是下一个需要通知的用户的一个超时。当该计时器启动时,然后为需要通知的下一个用户设置计时器,以此类推
这可以通过按通知时间排序的对象数组来完成。每次向数组中添加内容时,都会取消当前计时器,向数组中添加新通知,对数组进行排序,并为最早的通知设置计时器
当计时器触发时,您将从阵列中删除该项并计划下一项
而且,由于您可能希望它在服务器重新启动后继续存在,因此每次修改时都会将通知数组(可能是JSON格式)保存到文件或数据库中,以便在服务器重新启动时重新加载该数据
仅供参考,node.js的调度模块已经提供了这种类型的功能,如果您希望选择其他人已经编写的代码
其中一些模块的示例:
您可以使用
设置超时()
并将所有工作保留在服务器内,但对于大量用户,您不一定要为每个用户设置超时。您真正需要的只是下一个需要通知的用户的一个超时。当该计时器启动时,然后为需要通知的下一个用户设置计时器,以此类推
这可以通过按通知时间排序的对象数组来完成。每次向数组中添加内容时,都会取消当前计时器,向数组中添加新通知,对数组进行排序,并为最早的通知设置计时器
当计时器触发时,您将从阵列中删除该项并计划下一项
而且,由于您可能希望它在服务器重新启动后继续存在,因此每次修改时都会将通知数组(可能是JSON格式)保存到文件或数据库中,以便在服务器重新启动时重新加载该数据
仅供参考,node.js的调度模块已经提供了这种类型的功能,如果您希望选择其他人已经编写的代码
其中一些模块的示例:
我将把通知例程变成一个微服务,并让一个cron作业执行该服务,该服务在运行时查找要发送的通知,一旦发送就将其清除。这样,如果服务器重新启动,您就不会丢失设置超时。好主意,非常感谢。muchi将把通知例程变成一个微服务,并让一个cron作业执行该服务,该服务在运行时查找要发送的通知,发送后将其清除。这样,如果服务器重新启动,您就不会丢失设置超时。好主意,非常感谢