Metric指标分类与采集
Flink RestAPI介绍与使用
Checkpoint监控与调优
反压监控与原理
Flink内存配置与调优
TaskManager内存指标监控
Framework vs Task Memory
区别:是否计入 Slot 资源
- 总用量受限:
- -Xmx = Framework Heap + Task Heap
- -XX:MaxDirectMemorySize= Framewok Off-Heap + Task Off- Heap
无隔离
Heap
- 堆内存,Java 对象数据
- HeapStateBackend
- Off-Heap
- Direct
- DirectByteBuffer
- Direct
ByteBuffer.allocateDirect()
- MappedBytebuffer
FileChannel.map()
- Direct Memory
- 主要用于网络数据传输
特点:
Native Memory 类型
- 主要用于
- RocksDBStateBackend
- Batch Operator
- 特点:
- 同一 TaskExecutor 的各个 Slot 之间严格隔离
- 多点少点都能跑,与性能挂钩
RocksDB 内存限制
JVM Metaspace
- 存放 JVM 加载类的元数据
- 加载的类越多需要的内存空间越大
JVM Overhead
- Native Memory
- 用于其他 JVM 内存开销
- Code Cache
- Thread Stack
Flink内存模型
各内存组成、参数配置、作用
内存配置说明官方文档