定时任务有很多用途,譬如数据汇总产生报表数据、数据清理、文件清理等等。
云开发提供了定时触发器功能(triggers),提供了类似unix/Linux 下crontab的触发表达式。
triggers语法如下:
![](https://img.haomeiwen.com/i1724156/0ddc81d6e7b6dbfb.png)
其中name是自定义,config按照cron表达式:
![](https://img.haomeiwen.com/i1724156/54753844ee155cec.png)
unix/Linux的crontab表达式如下:
![](https://img.haomeiwen.com/i1724156/b15e2e83e6ac01f1.png)
本文以报表数据汇总为例,介绍云开发定时任务的一个简单实现。
一、需求分析
有项目信息表project,含有createTime字段,需以此字段为汇总条件产生每日、每月、每年的数据。
![](https://img.haomeiwen.com/i1724156/b0faaea3345ffae3.png)
设定定时任务:每日2点为汇总时间,产生日数据、月数据、年数据
二、程序实现
编写云函数,用于汇总数据,以下是日数据汇总,月和年类似,使用sortByCount方法,
![](https://img.haomeiwen.com/i1724156/49665ccb1bd51821.png)
三、定时任务配置
在云函数下配置config.json文件,内容如下:
![](https://img.haomeiwen.com/i1724156/aa0108bd9f69598a.png)
其中triggers配置为 0 0 2 * * * *,表示每日2点运行
运行结果,产生报表数据如下:
createTime可以看出每日2点产生
![](https://img.haomeiwen.com/i1724156/c744580678ee51f6.png)
四、数据展现效果
报表数据产生后,可以在小程序上展现。展现实现,参见https://www.jianshu.com/p/8e179d95bd26
![](https://img.haomeiwen.com/i1724156/6eccba41793c5d62.png)
网友评论