深入浅出 | flink 全局一致性快照(二)

目录

  1. 目录
    先带大家串一遍本篇文章的思路

  2. 什么是状态?
    发散思维的去思考状态,我们所理解的状态不仅仅只限于 flink 的状态,让大家了解到状态是一个无处不在的东西

  3. 什么是全局一致性快照?和状态有什么关系?
    全局一致性快照的一些生活、工作中应用的例子

  4. 为什么需要一致性快照?全局一致性快照和 flink 的关系?
    jvm GC,分布式应用做故障恢复(比如 flink),死锁检测等

  5. 全局一致性快照的分布式应用举例
    通过一个简单分布式应用介绍一下全局一致性状态是每时每刻都存在的。时间轴上的每一个时刻都存在一个全局一致性快照(类似拍照片)。flink 做 cp,sp,类似于每隔固定的时间从时间轴上的一个点拿出来这个时间点对应的一个全局一致性状态

  6. 全局一致性快照的标准定义
    假如说有两个事件,a 和 b,在绝对时间下,如果 a 发生在 b 之前,且 b 被包含在快照当中,那么则 a 事件或者其对快照产生的影响也被包含在快照当中

  7. 怎么实现全局一致性快照?
    同步去做,包括时钟同步、Stop-the-world,但是这两种方法都不可接受;
    既然同步无法做,那如果异步能做出相同的全局一致性状态也可以

  8. 分布式应用的全局一致性快照其 Process 状态和 Channel 状态到底需要记录什么?怎么记录 Channel 的状态?
    不是必须要在同一时刻嘛,为啥还能异步去做?只要异步做出来的状态和同步做出来的状态效果一致也可以。并且详细分析了 process 和 channel 中的状态包括什么,以及记录 channel 状态的方法。

  9. Chandy-Lamport 算法流程、例子
    介绍 Chandy-Lamport 算法流程并以一个例子介绍其执行过程

  10. flink 实现的全局一致性快照介绍
    大致介绍 flink 的全局一致性快照

  11. 参考文章
    本文编写过程中参考的文章

什么是状态?(了解状态)