
Flink 任务调优手段:并行度、内存、Checkpoint 与反压治理
系统梳理 Flink 作业调优的入口与顺序:并行度与资源评估、内存模型关键参数、Checkpoint 与状态优化、反压定位后的对症手段。
共 15 篇文章

系统梳理 Flink 作业调优的入口与顺序:并行度与资源评估、内存模型关键参数、Checkpoint 与状态优化、反压定位后的对症手段。

讲清数据倾斜在 keyBy/窗口聚合/Join 场景的表现,以及加盐打散、两阶段聚合、热点 key 单独处理等实战方案的选择逻辑。

讲清双流 Join 的双侧状态缓存与互相探测机制、interval join 与窗口 join 的区别,以及状态 TTL 的设定依据与防膨胀手段。

讲清 Flink CDC 基于 binlog 增量捕获 + 快照读的原理、无锁快照与断点续传的实现,以及整库同步、实时数仓 ODS 层等典型落地方式。

讲清 Flink 基于信用额度(credit-based)的反压传导原理,以及用 Web UI 指标、线程栈、Metrics 定位反压根因的完整排查套路。

区分内部状态一致性与端到端 Exactly-Once,讲清两阶段提交 sink 的预提交/提交/中止流程,以及 Kafka、MySQL 等常见 sink 的一致性实现方式。

从触发方、生命周期、文件格式、用途四个维度对比 Savepoint 与 Checkpoint,说明升级、扩容、A/B 测试等运维场景为什么必须用 Savepoint。

讲清 keyed state 与 operator state 的区别、三种状态后端的取舍,以及 RocksDB 增量快照的原理和大状态作业的工程配置。

讲清非对齐 Checkpoint 的原理(跳过对齐、连缓冲数据一起快照)、适用场景(严重反压下救活 Checkpoint)与使用前提和限制。

从 Chandy-Lamport 算法讲起,讲清 barrier 注入、对齐、快照写入、确认回报的完整流程,以及对齐的代价与适用前提。

讲清 Trigger 的触发时机与几种内置实现,以及 Watermark、allowedLateness、侧输出流三层迟到数据处理机制的组合用法。

对比滚动、滑动、会话、全局四类窗口的语义与状态开销,结合实际业务场景(PV 统计、近 N 分钟指标、用户会话)说明选型逻辑。

讲清事件时间、摄入时间、处理时间的区别,以及 Watermark 的生成方式、传播规则和「多长时间算迟到」的工程权衡。

从「批是流的特例」出发,讲清 Flink 如何用一套引擎、一套 API 同时跑有界流和无界流,以及流批一体在 DataStream/Table API 层的落地方式。

讲清 Flink 主从架构中 JobManager、TaskManager、Dispatcher、ResourceManager 的分工,以及 Task Slot、算子链这些资源与调度层面的关键概念。