《新手第一次用函数计算跑定时任务,先配好这 3 项》
每天凌晨清理一次临时文件、每周一早上发一次报表、每小时同步一次数据——这类定时任务,不用专门留一台云服务器 24 小时跑着。用函数计算跑定时任务,按实际执行次数计费,闲时不花钱,新手先配好下面这 3 项,就能稳稳地跑起来。
第一,触发器要选定时触发器,时间表达式别写错。新建函数后,在触发器里选“定时触发器”,按 Cron 表达式定执行时间。注意两点:一是 Cron 的位数和格式,先看页面上的格式说明再填,别凭印象照搬 Linux crontab;二是时区,默认可能是 UTC,写“每天 8 点执行”之前先确认时区换算,否则任务会在半夜跑。第一次建议先设一个 5 分钟后执行一次的测试触发器,跑通了再改成正式周期。
第二,超时时间和内存要按任务实际耗时配。函数默认超时时间一般只有几秒,定时任务常要批量处理数据,几秒根本不够用,跑到一半被掐断,还会留下半截结果。建好函数先估一下:处理 100 条数据要多久、调用一次外部接口要等多久,把超时设到预估耗时的 2 倍左右,留出余量。内存也一样,处理大文件、一次加载几千条记录时内存要给足,内存不足会直接报错退出。先小批量试跑一次,看日志里的实际耗时和内存占用,再定正式配置。
第三,日志和失败处理要提前开好,别等出问题再找。函数执行完先去看日志,确认每次定时执行都成功、耗时正常。更重要的是失败处理:定时任务失败了,平台会不会自动重试、重试几次,要在配置里确认;关键任务建议再配一条告警,失败就发短信或邮件通知,别让任务悄悄停了几天才发现。如果任务涉及写数据库、发消息这类不可重复的操作,还要做好幂等处理,避免重试造成重复写入。
配好这 3 项,定时任务就可以交给平台托管了。先从一个不重要的清理任务练手,跑稳一周再把重要任务迁过来。
- 点赞
- 收藏
- 关注作者
评论(0)