爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      【flink】Task 故障恢复详解以及各重启策略适用场景说明

      首页 知识中心 其他 文章详情页

      【flink】Task 故障恢复详解以及各重启策略适用场景说明

      2025-03-11 09:35:31 阅读次数:11

      故障,策略,重启

      当 Task 发生故障时,Flink 可以重启出错的 Task 以及其他受到影响的 Task ,以使得作业恢复到正常执行状态。

      Flink 通过重启策略和故障恢复策略来控制 Task 重启:

      • 重启策略决定是否可以重启以及重启的间隔;
      • 故障恢复策略决定哪些 Task 需要重启。

      一. 重启策略种类(Restart Strategies)

      参数 restart-strategy 定义了采取何种策略。

      • 如果没有启用 checkpoint,就采用“不重启”策略。
      • 如果启用了 checkpoint 且没有配置重启策略,那么就采用固定延时重启策略, 此时最大尝试重启次数由 Integer.MAX_VALUE 参数设置。

      restart-strategy的种类

      • none:没有重启策略 ,为默认策略
      • fixed-delay:固定尝试次数重启策略
      • failure-rate:失败率跟踪重启策略:这个策略会根据作业或任务的失败率以指数级递增的方式来计算重启的等待时间。
      • exponential-delay:失败率跟踪重启策略,这个策略会根据作业或任务的失败率以指数级递增的方式来计算重启的等待时间。

       

      可以通过 Flink 的配置文件 flink-conf.yaml 来设置默认的重启策略。
      也可以通过编程语言动态的设置,这里使用java语法

      例子:设置固定延时重启策略。

      //如果发生故障,系统会重启作业 3 次,每两次连续的重启尝试之间等待 10 秒钟。
      StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
      env.setRestartStrategy(RestartStrategies.fixedDelayRestart(
        3, // 尝试重启的次数
        Time.of(10, TimeUnit.SECONDS) // 延时
      ));
      

      1. Fixed Delay Restart Strategy

      固定延时重启策略

      按照给定的次数尝试重启作业,在两次连续的重试之间等待固定的时间。如果尝试超过了给定的最大次数,作业将失败。

      通过在 flink-conf.yaml 中设置如下配置参数,默认启用此策略。

      restart-strategy: fixed-delay
      restart-strategy.fixed-delay.attempts: 3
      restart-strategy.fixed-delay.delay: 10 s
      

      java

      StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
      env.setRestartStrategy(RestartStrategies.fixedDelayRestart(
        3, // 尝试重启的次数
        Time.of(10, TimeUnit.SECONDS) // 延时
      ));
      

      2. Failure Rate Restart Strategy

      故障率重启策略

      在故障发生之后重启作业,在两个连续的重启尝试之间等待固定的时间,当故障率(每个时间间隔发生故障的次数,也就说这个任务可以有多个这样的时间间隔)超过设定的限制时,作业最终会失败。

      通过在 flink-conf.yaml 中设置如下配置参数,默认启用此策略。

      # 失败率说明:五分钟内发生了超过三次故障,作业就失败。其中每次重试间隔为10秒
      restart-strategy: failure-rate
      restart-strategy.failure-rate.max-failures-per-interval: 3
      restart-strategy.failure-rate.failure-rate-interval: 5 min
      restart-strategy.failure-rate.delay: 10 s
      

      3. Fallback Restart Strategy

      使用群集定义的重启策略。 这对于启用了 checkpoint 的流处理程序很有帮助。 如果没有定义其他重启策略,默认选择固定延时重启策略。
      ing

      4. No Restart Strategy

      作业直接失败,不尝试重启。

      restart-strategy: none
      

      程序中设置

      StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
      env.setRestartStrategy(RestartStrategies.noRestart());
       

      二. 故障恢复策略(Failover Strategies)

      支持两种故障恢复策略:
      【flink】Task 故障恢复详解以及各重启策略适用场景说明

      1. (全图恢复策略)Restart All Failover Strategy

      在全图重启故障恢复策略下,Task 发生故障时会重启作业中的所有 Task 进行故障恢复。

      2. (基于region局部恢复策略)Restart Pipelined Region Failover Strategy

      该策略会将作业中的所有 Task 划分为数个 Region。当有 Task 发生故障时,它会尝试找出进行故障恢复需要重启的最小 Region 集合。

      相比于全局重启故障恢复策略,这种策略在一些场景下的故障恢复需要重启的 Task 会更少。

      此处 Region 指以 Pipelined 形式进行数据交换的 Task 集合。(ing)

      • DataStream 和 流式 Table/SQL 作业的所有数据交换都是 Pipelined 形式的。
      • 批处理式 Table/SQL 作业的所有数据交换默认都是 Batch 形式的。
      • DataSet 作业中的数据交换形式会根据 ExecutionConfig 中配置的 ExecutionMode 决定。

      需要重启的 Region 的判断逻辑如下:

      • 出错 Task 所在 Region 需要重启。
      • 如果要重启的 Region 需要消费的数据有部分无法访问(丢失或损坏),产出该部分数据的 Region 也需要重启。
      • 需要重启的 Region 的下游 Region 也需要重启。这是出于保障数据一致性的考虑,因为一些非确定性的计算或者分发会导致同一个 Result Partition 每次产生时包含的数据都不相同。

      三. 各重启策略的适用场景

      1. 失败率重启策略适用场景

      1.1. 流式数据处理应用程序:

      流式任务的数据源可能不稳定,这里指发生的时间不稳定,任务可能会由于输入数据的异常或负载波动而失败。当情况发生时,需要允许故障的发生,且在需要(可能发生多次)的时候进行有限次的重试,以保证任务运行的连续性。

      失败率重启策略允许在一定时间窗口内容忍一定的任务失败,同时限制了过于频繁的重启,有助于稳定应用程序的运行。

      1.2. 应用程序容忍性要求较低

      在某些情况下,容忍任务失败可能不是首要任务,而是为了确保整个作业继续运行。Failure Rate 重启策略可以用于实现一定程度的容错,同时不会过于频繁地中断整个作业。

      比如做大屏展示,要求每5分钟展示某些指标的聚合情况,这种任务有几个窗口的数据丢失影响不大,重点是持续运行。

      1.3. 需要自适应容错性的任务

      Failure Rate 重启策略还可以用于实现自适应容错性。当系统负载增加时,可能会增加失败率。通过动态调整失败率阈值,可以使系统在负载较高时更宽容,降低重启频率,从而提高整体性能。

      1.4. 可配置性

      Failure Rate 重启策略具有很高的可配置性,你可以根据具体应用程序和环境进行调整和配置,以确保达到期望的容错行为。

      比如实时任务中的窗口聚合,可以根据窗口大小去设置失败率阈值、时间窗口和最大重试次数等参数,以满足应用程序的需求。

      2. 固定延迟重启策略适用场景

      2.1. 失败要求较为严格的任务

      2.2. 任务执行时间可控(比如离线任务)

      如果你的任务的执行时间相对较短且可预测,那么固定延迟重启策略更容易实现,因为你可以合理地估计任务需要的时间,以确定重启的延迟。

      3. 无策略使用场景

      适用于那些对于任何任务失败都不允许的应用程序。

      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.csdn.net/hiliang521/article/details/134177476,作者:roman_日积跬步-终至千里,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:【python基础(七)】函数【一】:函数定义、函数调用、函数传参、返回值、作用域

      下一篇:【mongodb基础-6】mongodb query in java

      相关文章

      2025-04-23 08:18:21

      【Linux】密码策略、连接空闲超时时间设置

      【Linux】密码策略、连接空闲超时时间设置

      2025-04-23 08:18:21
      Linux , 密码 , 用户 , 策略
      2025-04-18 07:11:32

      不得不谈的lsm:分层结构和lsm数据结构

      LSM树的名字往往会给初识者一个错误的印象,事实上,LSM树并不像B+树、红黑树一样是一颗严格的树状数据结构

      2025-04-18 07:11:32
      key , 策略
      2025-03-12 09:32:22

      大数据平台的运维与管理技巧

      大数据平台的运维与管理技巧

      2025-03-12 09:32:22
      平台 , 故障 , 数据 , 运维 , 集群
      2025-03-12 09:31:11

      【设计模式之美】策略模式方法论:解耦策略的定义、创建和使用

      【设计模式之美】策略模式方法论:解耦策略的定义、创建和使用

      2025-03-12 09:31:11
      创建 , 工厂 , 模式 , 状态 , 策略
      2025-03-12 09:31:11

      【设计模式之美】策略模式实践:不同大小(采用不同的策略)文件进行排序

      【设计模式之美】策略模式实践:不同大小(采用不同的策略)文件进行排序

      2025-03-12 09:31:11
      代码 , 排序 , 策略 , 算法 , 配置文件
      2025-03-04 09:13:56

      深入解析C++26 Execution Domain:设计原理与实战应用

      深入解析C++26 Execution Domain:设计原理与实战应用

      2025-03-04 09:13:56
      C++ , 执行 , 模型 , 策略
      2025-03-04 09:05:29

      gitlab个别服务无法启动可能原因

      gitlab个别服务无法启动可能原因

      2025-03-04 09:05:29
      gitlab , 日志 , 重启
      2025-01-08 08:39:56

      kafka集群重启方法

      kafka集群重启方法

      2025-01-08 08:39:56
      bin , kafka , null , server , zookeeper , 重启
      2025-01-07 09:46:24

      软件设计模式系列之二十三——策略模式

      策略模式(Strategy Pattern)是一种行为型设计模式,它允许在运行时动态选择算法的行为。这意味着你可以定义一系列算法,将它们封装成独立的策略对象,然后根据需要在不修改客户端代码的情况下切换这些算法。

      2025-01-07 09:46:24
      不同 , 代码 , 模式 , 策略 , 算法 , 行为 , 选择
      2025-01-07 09:19:08

      深入剖析Redis哨兵模式的原理和应用

      哨兵模式是Redis中一种用于实现高可用性和自动故障转移的机制。通过哨兵模式,Redis集群可以在主从服务器之间保持一致性,当主服务器出现问题时,哨兵能够自动检测到并进行故障转移,以确保服务的连续性和稳定性。

      2025-01-07 09:19:08
      Redis , 哨兵 , 故障 , 服务器 , 状态 , 节点
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5274629

      查看更多

      最新文章

      【Linux】密码策略、连接空闲超时时间设置

      2025-04-23 08:18:21

      【设计模式之美】策略模式方法论:解耦策略的定义、创建和使用

      2025-03-12 09:31:11

      kafka集群重启方法

      2025-01-08 08:39:56

      网桥故障诊断与排除

      2024-11-22 08:12:02

      Kubernetes中的Pod管理与调度策略

      2024-11-14 08:11:52

      设计模式_策略模式

      2024-11-04 09:32:44

      查看更多

      热门文章

      linux快速重启java jar文件的shell命令

      2023-05-08 10:00:50

      linux-关机与重启命令

      2023-03-30 10:14:48

      Pod重启策略

      2023-05-23 08:22:30

      使用prlimit命令不重启进程修改其limits等运行参数

      2023-06-28 09:03:57

      kuma 学习四 策略

      2023-04-06 06:34:56

      U盘的常见物理故障类型和故障表现汇总

      2023-08-07 07:02:45

      查看更多

      热门标签

      linux java python javascript 数组 前端 docker Linux vue 函数 shell git 节点 容器 示例
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      Kubernetes中的Pod管理与调度策略

      kuma 学习四 策略

      【Linux】密码策略、连接空闲超时时间设置

      linux快速重启java jar文件的shell命令

      U盘的常见物理故障类型和故障表现汇总

      kafka集群重启方法

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号