现在知道的一个就是 celery+rabbitMQ 来做,学了两天不知道怎么做灵活一点,不知道时间那块怎么写,想做到的效果是这样的。 有没有大佬推荐一下的?或者指点指点,谢谢~
可以使用 Jenkins 来做定时任务。
celery 有自带定时器功能,celery beat 了解下,另外 APScheduler 也可以做定时器,当前 Jenkins 也 ok
我不知道怎么根据我前端提交的时间去设置定时的任务。
你得先了解那些库怎么实现定时的,后端数据要处理成那些库支持的数据格式,多看文档
好的,谢谢~
提供个取巧的方法,需求上如果执行间隔大的话,可以定义一个计划任务 A,A 只做一件事:执行脚本 B。程序 C 中存在生成脚本方法,提供固定模板,参数接收表单中的时间以及计划执行的脚本路径变量。 当需要创建定时任务时,程序 C 按固定模板在脚本 B 中生成新的任务函数、以及调用。计划任务 A 可以设置为 1 小时一次。每次执行时,调用一遍脚本 B 中所有的任务函数。 每个任务函数接收参数都是当前时间,在函数中去做判断和调用。
感觉好像还不是很明白,我捋一捋哈~ 首先我是按照 项目 来做定时任务的,一个 项目 就是一个 任务,然后定时是根据 项目 ID 来的, 我现在不清楚的地方就是,定时那里怎么根据我提交的 项目 ID 去数据库拿对应的时间出来。 因为我前端 POST 提交任务的时候就已经提交了时间跟当前项目的 ID。
win 不是自带任务计划的吗?那个不好用?
一般定时任务,我会选择交给 jenkins ,配置起来很方便,而且执行日志啥的也很齐全,便于大家使用时随时通过日志了解任务执行情况。 jenkins 有提供 api 给程序创建和修改 job 。