基于日志的协议与面向恢复计算技术解析
1. 基于日志的协议
在分布式系统中,日志协议至关重要。当进程恢复时,如进程 $P_k$ 恢复后,它会收到进程 $P_i$ 发送的对应顺序消息。$P_i$ 会与 $P_k$ 联系,并将具有有效 rsn 值的常规消息重新传输给 $P_i$,以此确保恢复过程中的状态间隔能按正确顺序重新初始化。恢复期间,$P_j$ 收到的常规消息会在 $P_i$ 处正确再生并记录。
在日志记录方面,与基于接收方的悲观日志记录不同,进程进行本地检查点操作时不会截断其消息日志。因为日志包含发送给其他进程的消息,这些消息可能用于其他进程的恢复。这不仅会导致消息日志大小无界,还会使恢复时间无界。
为解决此问题,可对基于发送方的消息日志记录协议进行修改。进程完成本地检查点后,广播包含其在检查点之前执行的消息的最高 rsn 值的消息。其他进程发送给该进程且 rsn 值小于或等于此最高 rsn 值的所有消息,可从其消息日志中清除(包括作为检查点一部分存储在稳定存储中的消息)。也可将此最高 rsn 值搭载在发送给其他进程的每个消息(常规或控制消息)上,实现对不再需要的日志消息的异步清除。
2. 面向恢复的计算
面向恢复的计算旨在为基于互联网的服务器实现快速恢复。其核心在于开发相关指南、方法和工具,通过减少平均恢复时间(MTTR)来提高系统可用性,因为系统可用性与平均恢复时间成反比(可用性 = MTTF / (MTTF + MTTR))。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



