登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
安全
›
Apache DolphinScheduler任务失败重试机制:像快递重投 ...
Apache DolphinScheduler任务失败重试机制:像快递重投一样智能
[ 复制链接 ]
姘轻拎
2026-2-27 11:50:02
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
想象一下,你寄送的重要快递被退回了,快递员不会直接丢弃,而是根据你的要求间隔几小时后重新投递,直到成功或达到最大投递次数。Apache DolphinScheduler的任务重试机制就是这种“智能重投”的调度系统版。
DolphinScheduler提供了完善的任务失败重试机制,支持业务任务节点在执行失败后自动延迟重试,直到成功或达到最大重试次数。该机制通过状态机驱动、事件发布和延迟队列实现,确保任务执行的可靠性。
核心机制:三步重试法
1. 失败时自动触发重试
当任务(如Shell脚本)执行失败时,系统会立即检查两个关键配置:
failRetryTimes:最多重试几次(默认0次)
failRetryInterval:每次重试间隔几分钟
这些配置在任务创建时设定,前端表单会将其转换为JSON格式存储。
2. 智能延迟计算
系统不会立即重试,而是计算精确的延迟时间:
// 实际延迟 = 配置间隔 - (当前时间 - 任务结束时间)
long remainingTime = TimeUnit.MINUTES.toMillis(delayTime)
+ System.currentTimeMillis()
- taskInstance.getEndTime().getTime();
复制代码
这确保无论任务何时失败,都能保持固定的重试间隔。
3. 状态机驱动重试
重试过程由状态机精确控制:
失败状态
:收到失败事件后,检查是否还能重试
重试状态
:创建新的任务实例(保持首次提交时间不变)
重新执行
:发布启动事件,任务重新进入调度队列
关键特性:哪些任务能重试?
✅ 支持重试的业务节点
Shell脚本任务
SQL查询任务
Spark计算任务
所有实际执行代码的任务 5
❌ 不支持重试的逻辑节点
条件分支节点
子流程节点
依赖检查节点
这些节点只控制流程走向,不执行具体代码 5 。
实战验证:测试案例
集成测试展示了完整的重试过程:
任务A首次失败(retryTimes=0)
系统自动重试1次(retryTimes=1)
两次任务实例保持相同的firstSubmitTime
最终失败后工作流停止 6 。
特殊场景处理
依赖任务等待
如果任务B依赖任务A,当A失败但未达最大重试次数时,B会进入等待状态而非直接失败 7 。
手动干预能力
即使任务正在等待重试,你仍可以:
暂停任务(取消后续重试)
终止任务(强制停止)
系统会优雅地处理这些中断请求 8 。
容错 vs 重试:重要区别
任务重试
:任务代码执行失败后的自动重试
Worker容错
:当Worker服务器宕机时,Master接管并重新调度任务(包括Yarn任务) 9
运维建议
合理设置重试间隔
:避免过于频繁的重试导致系统压力
区分任务类型
:为关键任务设置更多重试次数
监控重试指标
:关注retryTimes字段,识别不稳定任务
理解逻辑节点限制
:不要期望条件分支会自动重试
总结
Apache DolphinScheduler的重试机制就像一个尽职的调度员,在任务失败时不会轻易放弃,而是按照你的要求智能地重新尝试。通过状态机精确控制、延迟计算和事件驱动架构,确保了分布式环境下任务执行的可靠性。记住:只有真正执行代码的业务节点才能享受这种“重投”服务,而逻辑节点则需要你手动处理异常情况。
Notes
重试间隔以分钟为单位,实际延迟计算会扣除任务已结束的时间
每次重试会创建新的TaskInstance记录,但保持firstSubmitTime不变
Worker宕机触发的容错重试与任务失败重试是两种不同的机制
逻辑节点(如子流程)不支持自动重试,需要手动干预
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
Apache
DolphinScheduler
任务
失败
重试
相关帖子
用 C# 写一个完整的 ReAct 智能体:从命令行输入到任务完成的全链路拆解
从 Apache SeaTunnel 走向 ASF Member:一位开发者的长期主义样本
AI Agent 跑完任务怎么通知你?我写了个微信推送服务
FastAPI + Celery 实战:异步任务的坑与解法,我帮你踩了一遍
小白版 | Apache DolphinScheduler 本地启动指南
关于 Apache SeaTunnel 类加载器治理的一些观察与思考(欢迎讨论)
祝贺 Apache SeaTunnel PMC 新成员张圣航!
祝贺 Apache SeaTunnel PMC 新成员张圣航!
Apache Kafka实战:Spring Boot消息队列完整指南
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
用 C# 写一个完整的 ReAct 智能体:从命令行输入到任务完成的全链路拆解
0
559
郦惠
2026-03-18
业界
从 Apache SeaTunnel 走向 ASF Member:一位开发者的长期主义样本
3
659
玛凶
2026-03-27
业界
AI Agent 跑完任务怎么通知你?我写了个微信推送服务
3
1025
杭环
2026-03-29
业界
FastAPI + Celery 实战:异步任务的坑与解法,我帮你踩了一遍
1
334
羡渥蛛
2026-03-31
安全
小白版 | Apache DolphinScheduler 本地启动指南
2
504
仁夹篇
2026-04-02
安全
关于 Apache SeaTunnel 类加载器治理的一些观察与思考(欢迎讨论)
2
36
酒跚骼
2026-04-02
业界
祝贺 Apache SeaTunnel PMC 新成员张圣航!
0
9
赐度虻
2026-04-02
业界
祝贺 Apache SeaTunnel PMC 新成员张圣航!
2
690
凌彦慧
2026-04-02
安全
Apache Kafka实战:Spring Boot消息队列完整指南
0
140
斜素欣
2026-04-05
回复
(8)
嗣伐
2026-2-27 13:00:49
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,辛苦了
亢安芙
2026-3-2 08:41:53
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
热心回复!
掳诚
2026-3-6 11:23:48
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
懂技术并乐意极积无私分享的人越来越少。珍惜
嗦或
2026-3-7 11:23:02
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享
后沛若
2026-3-8 04:26:49
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
前排留名,哈哈哈
挚魉
2026-3-8 19:31:38
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,辛苦了
系味
3 天前
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
收藏一下 不知道什么时候能用到
梁丘艷蕙
前天 23:19
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
东西不错很实用谢谢分享
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
姘轻拎
前天 23:19
关注
0
粉丝关注
22
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991126
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
神泱
9516
6
宋子
9875
7
韶又彤
9909
8
荪俗
8988
9
蓬森莉
9867
10
二艰糖
9515
查看更多
今日好文热榜
870
OpenSpec + Claude Code 实战指南:让 AI
23
Redis Sentinel高可用实战:主从自动故障转
290
自感痕迹论:差异即意义(含参考文献引用)
443
自感痕迹论:差异即意义(含参考文献引用)
498
自感痕迹论:差异即意义(含参考文献引用)
300
自感痕迹论:差异即意义(含参考文献引用)
963
自感痕迹论:差异即意义(含参考文献引用)
1001
自感痕迹论:差异即意义(含参考文献引用)
804
自感痕迹论:差异即意义(含参考文献引用)
900
环形缓冲区在嵌入式系统中的应用:串口中断
541
自感痕迹论:差异即意义(含参考文献引用)
254
自感痕迹论:差异即意义(含参考文献引用)
2
我帮你测过了,测试圈排名第一的 Skill 果
439
自感痕迹论:差异即意义(含参考文献引用)
154
自感痕迹论:差异即意义(含参考文献引用)
3
热门视频是怎样炼成的——基于 B站“每周必
757
自感痕迹论:差异即意义(含参考文献引用)
2
我帮你测过了,测试圈排名第一的 Skill 果
2
我帮你测过了,测试圈排名第一的 Skill 果
963
如何用交换机命令行创建 VLAN(轻松秒懂)