前言
- 记录时间:2022.7.27
- 内容:
- 1.NN和2NN的工作流程。
- 2.为什么小秘书2NN不能完全代替老板NN的工作?
一、NN和2NN的工作流程
- 硬盘和内存就像阴阳两极的对立,硬盘可靠但慢,内存快但不可靠。
那如何利用他俩的共同优势,让结果像太极那样游刃得当呢? - 借用大海哥的图,自己总结了三个场景的运行流程。
开机启动:
将硬盘里的 edits_inprogress_001(编辑日志)和 fsimage(镜像文件)加载进内存。
客户端client发出操作请求:
1.新建一份空白的 edits_inprogress_002,用作后续的编辑日志写入。
2.将内存里的 edits_inprogress_001 改名为 edits_001,用作数据备份。
3.将操作请求内容写入 edits_inprogerss_002。
CheckPoint触发:(定时时间到/edits中的数据满了)
1.拷贝 edits_001 和 fsimage 到 2NN。
2.加载 edits_001 和 fsimage 到内存,合并生成结果命名为 fsimage.chkpoint。
3.拷贝 fsimage.chkpoint 到 NN。
4.将NN里的 fsimage.chkpoint 重命名为 fsimage ,覆盖掉原来的 fsimage。