egg定时和定点任务
egg提供了强大的定时任务系统。通过定时任务,可以系统修改服务的缓存数据,以便处理需要定时更新的数据。
在app/schedule目录下新建一个js文件,每一个js文件就是一个定时任务。
一、定时任务(以定时更新cache数据为例)
1、设置1分钟间隔,可以在服务其他地方获取this.ctx.app.cache的值
module.exports = {schedule: {interval: '1m', // 1 分钟间隔type: 'all', // 指定所有的 worker 都需要执行},async task(ctx) {const res = await ctx.curl('http://www.api.com/cache', {dataType: 'json',});ctx.app.cache = res.data;},
};
2、还可以设置单位如下
1ms -> 1毫秒
1s -> 1秒
1m -> 1分钟
等。。。
二、定点任务(以每周一的5点30分0秒更新排行榜为例)
1、使用cron参数设定时间,cron参数分为6个部分,*表示所有都满足
* * * * * *
┬ ┬ ┬ ┬ ┬ ┬
│ │ │ │ │ |
│ │ │ │ │ └ 星期 (0 - 7) (0或7都是星期日)
│ │ │ │ └───── 月份 (1 - 12)
│ │ │ └────────── 日期 (1 - 31)
│ │ └─────────────── 小时 (0 - 23)
│ └──────────────────── 分钟 (0 - 59)
└───────────────────────── 秒 (0 - 59, optional)
2、案例如下
module.exports = {schedule: {cron: '0 30 5 * * 1', //每周一的5点30分0秒更新type: 'all', // 指定所有的 worker 都需要执行},async task(ctx) {const res = await ctx.curl('http://www.api.com/cache', {dataType: 'json',});ctx.app.cache = res.data;},
};
三、其他参数
1、启动执行immediate
设置immediate参数为true时,该定时任务会在项目启动时,立即执行一次定时任务
module.exports = {schedule: {interval: '1m', // 1 分钟间隔type: 'all', // 指定所有的 worker 都需要执行immediate: true, //项目启动就执行一次定时任务},async task(ctx) {const res = await ctx.curl('http://www.api.com/cache', {dataType: 'json',});ctx.app.cache = res.data;},
};
2、配置disable参数为true时,该定时任务即关闭
3、指定定时任务执行环境env
env: ["dev", "debug"] //该定时任务在开发环境和debug模式下才执行
egg定时和定点任务相关推荐
- vb net的定时循环_Python3-定时任务的四种实现方式
最近做一个小程序开发任务,主要负责后台部分开发:根据项目需求,需要实现三个定时任务: 1>定时更新微信token,需要2小时更新一次: 2>商品定时上线: 3>定时检测后台服务是否存 ...
- python定时任务_Python3实现定时任务的四种方式
最近做一个小程序开发任务,主要负责后台部分开发:根据项目需求,需要实现三个定时任务: 1>定时更新微信token,需要2小时更新一次: 2>商品定时上线: 3>定时检测后台服务是否存 ...
- HarmonyOS之深入解析服务卡片的使用
一.概述 ① 基本概念 服务卡片(以下简称"卡片")是 FA 的一种界面展示形式,将 FA 的重要信息或操作前置到卡片,以达到服务直达,减少体验层级的目的. 卡片常用于嵌入到其他应 ...
- 【渝粤题库】国家开放大学2021春2322物流信息技术题目
试卷代号:2322 2021年春季学期期末统一考试 物流信息技术 试题 2021年7月 一.单项选择题(每小题1分,共10分,将正确答案选项的字母填入括号内) 1.全球卫星定位系统也称为( )技术. ...
- 550什么意思_研报翻译官第二期:带你了解什么是CPI
欢迎收看"第二期"研报翻译官,临近年末,各类金融研报接踵而至,我们也常会看到GDP.CPI.PPI这类字眼. 过年回家跟亲戚朋友唠嗑的时候,如果不扯上几句CPI或PPI,都显自己得 ...
- python做定时任务的方式及优缺点_Python3-定时任务四种实现方式
最近做一个小程序开发任务,主要负责后台部分开发:根据项目需求,需要实现三个定时任务: 1>定时更新微信token,需要2小时更新一次: 2>商品定时上线: 3>定时检测后台服务是否存 ...
- oracle透明网关访问sqlserver_基于智慧照明网关的地下停车场照明解决方案
目前,很多建筑都建有地下停车场,由于这些停车场面积大.光线差,车辆经常出入,很难实现停车场内部照明的自动控制,导致了地下车库耗电严重.地下车库照明的耗电问题,从本质上来讲,是用电的管理问题,稍有不慎, ...
- 代码埋点、可视化埋点、无埋点几种数据埋点方案的分析报告
目录 数据采集的核心问题 一.埋点是什么 二.为什么要埋点 三.埋点有哪些方式 四.各埋点方式优劣对比 五.其他 在这篇文章里面,我们会对数据采集的一些基本概念进行阐述,然后,会针对目前市面上新增的一 ...
- 如何运营高效的社群?
在2015年初的时候,社群运营作为一种维护客户关系.提高用户粘性的运营手段,开始在互联网行业盛行.早起的社群大多以QQ群和微信群为主,将目标用户聚拢在一起,通过运营人员作为管理角色以达成某种运营目的. ...
最新文章
- CTF---Web入门第十题 Once More
- 网站优化上首页不算成功稳定排名才算
- 在React中处理事件
- 用户体验岗如何说服其他部门_为什么我们应该说服用户更新他们的浏览器-这是双赢的。...
- 自动采集壁纸的微信小程序
- vue 加载数据 影响seu_VUE常见面试题
- cadence快捷键修改文件_PCB快捷键设置
- 剑指Offer之寻找链表中环的入口问题
- 性能优化 - 之一 (C/C++)
- 放之四海皆适用的设计原则(一)
- 面向对象的JavaScript(1):创建简单的类
- Hbase KeyValue结构详解
- TensorFlow MNIST 数据集
- c语言程序设计教程二进制是什么,C语言程序设计教程
- QQ坦白说解密解决方案(二)
- matlab中simulink无法打开,【转】Simulink打不开的解决办法
- 基于VB和单片机的智能家居监控系统设计
- Linux 程序编译过程的来龙去脉
- 还有很多事情等待去完成。
- 数字集成电路设计考试概念总结