首页 > 编程语言 >【Node.js】定时任务

【Node.js】定时任务

时间:2024-03-29 19:31:05浏览次数:24  
标签:Node 表示 schedule js 任务 import 定时 邮件

Cron表达式

Cron表达式是用于表示定时任务的一种语法。它由6个字段组成,按顺序分别表示分、时、日、月、周几和年份。

*    *    *    *    *    *
┬    ┬    ┬    ┬    ┬    ┬
│    │    │    │    │    │
│    │    │    │    │    └── 星期(0 - 6,0表示星期日)
│    │    │    │    └───── 月份(1 - 12)
│    │    │    └────────── 日(1 - 31)
│    │    └─────────────── 小时(0 - 23)
│    └──────────────────── 分钟(0 - 59)
└───────────────────────── 秒(0 - 59)
  • 秒(0-59)
  • 分(0-59)
  • 时(0-23)
  • 日(1-31)
  • 月(1-12)
  • 周几(0-7,其中0和7都表示周日)
  • 年份(可选,1970-2099)

除了基本的数字之外,Cron表达式还支持以下特殊的符号:

  • 星号(*):表示匹配任意值。例如,使用星号(*)表示分字段,表示每分钟都触发。
  • 逗号(,):表示枚举值。例如,使用1,3,5表示分字段,表示在第1、3、5分钟执行。
  • 连字符(-):表示范围。例如,使用10-20表示分字段,表示在第10到20分钟之间执行。
  • 正斜线(/):表示步长值。例如,使用0/2表示秒字段,表示每2秒执行一次。
  • 问号(?):用于日和周几字段,表示任意值。在日和周几字段中只能有一个是问号。
  • L:表示最后。例如,使用L表示日字段,表示本月的最后一天执行。在周几字段中,L表示本周的最后一天(周六)。
  • W:表示工作日。例如,使用3W表示日字段,表示最接近3号的工作日执行。如果3号是周六,则任务将会在最近的上周五执行。
  • #:表示第几个。例如,使用3#2表示周几字段,表示每月的第2个周几执行。

定时任务使用场景

定时任务在实际应用中非常常见,以下列举了一些常见的定时任务应用场景:

  1. 数据备份:定时将重要的数据备份到远程服务器,以防止数据丢失或损坏。
  2. 日志清理:定时清理过期的日志文件,以释放磁盘空间并维护系统正常运行。
  3. 批量任务:定时执行批量处理任务,如数据导入导出、邮件发送等。
  4. 数据同步:定时将数据从一个系统同步到另一个系统,保持数据的一致性。
  5. 定时通知:定时发送通知或提醒,如生日祝福、任务提醒等。
  6. 自动化测试:定时运行自动化测试脚本,确保系统功能正常。
  7. 数据统计:定时统计数据,生成报表或分析结果,用于业务决策。

定时任务

先安装 npm install node-schedulenpm install request

小案例

我这里是用了定时任务 + 邮件服务,在初恋生日当天 0 时 0 分,给她发了一封邮件(痛,太痛了

标签:Node,表示,schedule,js,任务,import,定时,邮件
From: https://blog.csdn.net/XiugongHao/article/details/137058379

相关文章

  • Node.js毕业设计合同管理系统(Express+附源码)
    本系统(程序+源码)带文档lw万字以上  文末可获取本课题的源码和程序系统程序文件列表系统的选题背景和意义选题背景:在现代商业活动中,合同作为规范各方权利与义务的法律文件,扮演着至关重要的角色。随着经济全球化和商业交易的日益频繁,企业和个人需要处理和管理的合同数量急......
  • Node.js毕业设计合同管理(Express+附源码)
    本系统(程序+源码)带文档lw万字以上  文末可获取本课题的源码和程序系统程序文件列表系统的选题背景和意义选题背景:在当今信息化快速发展的时代,合同管理系统作为企业日常运营中不可或缺的一部分,扮演着至关重要的角色。合同管理涉及合同的起草、审核、签订、执行以及存档等......
  • Node+Vue毕设音乐制作资源分享网站(程序+mysql+Express)
    本系统(程序+源码)带文档lw万字以上 文末可获取本课题的源码和程序系统程序文件列表系统的选题背景和意义选题背景:在音乐创作和制作的领域,资源的获取与分享一直是创作者们非常关注的话题。随着互联网的普及与发展,人们越来越倾向于通过网络平台交流思想、分享作品以及寻找......
  • Node+Vue毕设音乐推荐网站(程序+mysql+Express)
    本系统(程序+源码)带文档lw万字以上 文末可获取本课题的源码和程序系统程序文件列表系统的选题背景和意义选题背景:在当今信息化时代,音乐已经成为人们生活中的重要元素之一。随着互联网技术的不断发展,人们对于音乐的消费方式也在发生着翻天覆地的变化。传统的音乐传播方式......
  • 【课件】Node.js工程师养成计划
    引用地址第3章Node脚手架篇–打造自己的脚手架工具运用Node基础知识,完成脚手架项目,打造一个自己的脚手架工具,为后续web项目的构建打基础,同时本项目中会加入更深层次的Node相关知识,完成对Node本身相关知识的全面构建第4章Node原生实战篇–项目基建–原生......
  • JavaScript代码安全性提升:选择和使用JS混淆工具的指南
    引言在Web开发中,JavaScript是一种常用的脚本语言,然而,由于其代码容易被他人轻易获取和修改,为了保护JavaScript代码的安全性和版权,我们需要使用JS混淆工具。本文将介绍什么是JS混淆工具、为什么要使用以及如何选择合适的JS混淆工具,同时还会列举一些常用的JS混淆工具。 正文什......
  • 五款常用在线JavaScript加密混淆工具详解:jscrambler、JShaman、jsfack、ipaguard和jje
    摘要本篇技术博客将介绍五款常用且好用的在线JavaScript加密混淆工具,包括jscrambler、JShaman、jsfack、freejsobfuscator和jjencode。通过对这些工具的功能及使用方法进行详细解析,帮助开发人员更好地保护和加密其JavaScript代码,提升网站的安全性和保密性。 引言在当今......
  • JS日期时间处理库 Day.js
    GitHubhttps://github.com/iamkun/dayjs文档https://dayjs.gitee.io/zh-CN/下载https://cdn.jsdelivr.net/npm/[email protected]/dayjs.min.js主要用法字符串转日期时间对象letdatetime1=dayjs('2024-03-2916:52:30.356','YYYY-MM-DDHH:mm:ss.SSS');//返回结果是day......
  • vuex.esm.js:135 Uncaught Error: [vuex] getters should be function but “getters.
    报错vuex.esm.js:135UncaughtError:[vuex]gettersshouldbefunctionbut"getters.mode"inmodule"userModule"is"dark".atassert(vuex.esm.js:135:1)原因:在使用vuex的moulds时index.js中已创建了一个vue实例newVuex.Store,在模块文件中又再创建了一个,导致报......
  • JSON Editor 中文文档
    JSONEditorJSONEditor根据定义的JSONSchema生成了一个Html表单来对JSON进行编辑。它完整支持JSONSchema的版本3和版本4,并且它集成了一些流行的CSS框架,例如bootstrap,foundation,andjQueryUI等。JSONEditor生成的编辑器支持输入框、下拉框、等几乎所有的html5输入......