比如我服务端运行一段每隔 1 分钟运行的脚本,我想的是可以通过一个后台系统控制这个定时脚本,比如运行间隔,运行的具体任务,有什么好的设计方案吗?
我目前想到的是这个任务在每次执行的时候去表里面获取这个任务对应的各种配置信息?主要觉得还是有点浪费,比如我一直不修改那就没必要请求了。
1
securityCoding 2021-04-06 10:56:37 +08:00
分两块来看?
1. 任务执行时间控制 可以看看分布式任务调度框架,基本都提供实时调整执行策略功能 2. 运行的具体任务 这个应该属于业务内部范畴了,可以通过任务调度框架传递上下文参数 |
2
ferock 2021-04-06 10:57:32 +08:00 via Android
有很多成熟的任务调度分布式系统
|
3
redtea 2021-04-06 10:59:30 +08:00
XXL-JOB,但是要小心被黑拿去挖矿。
|
4
aladdindingding 2021-04-06 11:03:02 +08:00
@ferock python 的有么
|
5
ivanksgulu OP 感谢各位回复,XXL-JOB 了解了下真的是大而全,执行的任务语言可以不受限制这点可以满足很多人了。
|
6
akira 2021-04-06 11:29:03 +08:00
crontab 定时每分钟调用程序 A
程序 A 里面去执行你配置好的任务 |
7
ospider 2021-04-06 11:29:11 +08:00
别想复杂了。。写个 web 界面读写 crontab 就好了
|
8
InkAndBanner 2021-04-06 11:37:43 +08:00
可以简单用 Spring 的那一套实现定时
|
9
InkAndBanner 2021-04-06 11:39:38 +08:00
|
10
allisone 2021-04-06 11:43:56 +08:00
python 的 django 框架结合 django-celery 、django-celery-beat 、django-celery-beat 可以实现定时任务配置化
|
11
echowuhao 2021-04-06 12:34:24 +08:00 via Android
airflow
|
12
Jackeriss 2021-04-06 12:47:08 +08:00 via Android
apscheduler
|
13
ivanksgulu OP 感谢楼上补充了。了解了下 ,还是 xxl 很贴合我的业务,打算用 xxl 了
|
14
woyao396 2021-04-06 15:18:33 +08:00
可以考虑一下 jenkins 很灵活 很强大
|
15
dqzcwxb 2021-04-06 16:09:58 +08:00
xxl-job 雪里的东西都挺好用
|
16
MeteorCat 2021-04-06 19:08:56 +08:00 via Android
我都是 systemctl 写成 service 之后用 timer 调用的
|
17
SbloodyS 2021-04-06 21:25:27 +08:00
dolphinscheduler
|