node.js - nodejs cron job(AWS) - 我如何在多个时区运行 cron 作业
问题描述
假设我们有 3 个用户(用户数可能实时动态变化)位于不同时区的不同地方。
user1 - 澳大利亚/阿德莱德
user2 - 亚洲/加尔各答
user3 - 欧洲/巴黎
............
............
我想在每天的某个时间点向所有可用的用户发送一封电子邮件,以便电子邮件应该在下午 2 点发送给所有用户到他们各自的时区
我可以为单个时区做到这一点,但不能使用单个 cron 作业进行多个
如何使用单个 cron 作业让它在多个时区工作?
解决方案
基于node-cron将时区作为参数CronJob
const CronJob = require('cron').CronJob;
let timzones = ["America/Los_Angeles", "Asia/Kolkata"];
timzones.forEach(timezone=>{
var job = new CronJob('* * * * * *', function() {
console.log('You will see this message every second');
}, null, true, timezone);
job.start();
})
推荐阅读
- date - GNU 日期如何解析年份的最后两位数字?
- javascript - 异步函数不会等到在 nodejs/javascript 中执行调用的异步函数
- python - 无法标记整列
- slurm - concurrent.futures.ProcessPoolExecutor 不适用于 Slurm
- node.js - fs_promises_readdir 是异步函数吗?
- r - RMarkdown 中的连字符
- java - Android GreenDao 如何获取不区分大小写的搜索
- flutter - Flutter CustomScrollView中Stepper上方的空白
- sql - Oracle:从字符串中删除某些字符
- c# - Android ListFiles 返回 null