系列文章目录
前言
使用cron 插件实现动态任务调度,配置不同时区的定时任务
一、安装cron和timezone
npm ininstall cron
npm install moment-timezone
二、创建相关db
1.定时任务开关表
CREATE TABLE `scheduled_task_switch` (
`id` int(10) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
`runningState` tinyint(1) DEFAULT '0' COMMENT '0: 初始状态 1:正在停止 2:已停止',
`createBy` varchar(50) NOT NULL,
`createDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updateBy` varchar(50) DEFAULT NULL,
`updateDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
2.定时任务表和运行记录表
CREATE TABLE `scheduled_tasks` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`code` varchar(100) DEFAULT NULL,
`name` varchar(100) NOT NULL,
`cronTime` varchar(100) DEFAULT NULL,
`timeZone` varchar(200) DEFAULT NULL,
`isActive` tinyint(1) NOT NULL DEFAULT '1',
`limitCount` int(10) DEFAULT NULL,
`errMaxCount` int(5) DEFAULT '5',
`saveLog` tinyint(1) DEFAULT '0'45,
PRIM

本文详细介绍了如何使用node-cron插件在Node.js中实现动态任务调度,并结合TimeZone进行配置。内容包括cron和timezone的安装、相关数据库的设计(定时任务开关表和任务记录表)、代码实现及时区数据的下载。通过实例展示了每2分钟执行一次的任务表达式。

7万+

被折叠的 条评论
为什么被折叠?



