我正在开发一个邮件提醒系统,可以在任务到期前24、8、3和1小时向用户发送提醒。
我有一个运行在 Node.js 上的服务器。我的第一个想法是每次分配任务时设置四个单独的 setTimeout()。但是,我认为在服务器上拥有数百个空闲的 setTimeout() 不是最佳性能。
因此,我是否应该每五分钟轮询未完成的任务并向具有即将到期任务的用户发送提醒?这种方法的缺点是每五分钟都需要读取整个 MongoDB 集合。
我正在开发一个邮件提醒系统,可以在任务到期前24、8、3和1小时向用户发送提醒。
我有一个运行在 Node.js 上的服务器。我的第一个想法是每次分配任务时设置四个单独的 setTimeout()。但是,我认为在服务器上拥有数百个空闲的 setTimeout() 不是最佳性能。
因此,我是否应该每五分钟轮询未完成的任务并向具有即将到期任务的用户发送提醒?这种方法的缺点是每五分钟都需要读取整个 MongoDB 集合。