# 1. Primary-Backup Replication 在传统数据库主备复制的工程取舍。 A 主备复制天然具备多数派容错,主节点故障后无需任何协议即可安全切换 B 异步主备复制能保证强一致,主节点故障时不会丢失任何已确认数据 C 主备复制与 Paxos 一样,裂脑问题在协议层面天然被消除 D 同步主备复制保证已确认写操作不丢失,但写延迟受备份确认往返影响 ✓ 正确答案
# 2. Async 模型与 Sync 模型在消息传递假设的工程差异。 A 异步模型中进程能可靠地区分节点失效与消息延迟 B 同步模型是工程系统最普遍采用的假设 C 异步模型下存在确定性的共识算法(FLP 定理不成立) D 同步模型假设消息延迟有界,因此超时判定失效是可靠的 ✓ 正确答案
# 3. Chain Replication with Apportioned Queries(CRAQ)的读扩展。 A CRAQ 让链上每个节点都能服务读请求,通过版本一致性查询保持线性一致 ✓ 正确答案 B 与经典 Chain Replication 相同,读请求只能由链尾 Tail 处理 C CRAQ 在读请求到达时总需要向 Tail 发起一次查询,无法扩展读 D CRAQ 只能用于写多读少的场景
# 4. Async / Sync 模型在 FLP 不可能定理下的工程含义。 A 只要采用多数派仲裁,就能完全避开 FLP 定理的限制 B FLP 定理说明真实分布式系统永远无法达成共识 C 完全异步、允许崩溃的模型下,确定性共识算法不存在 ✓ 正确答案 D FLP 定理只适用于同步模型
# 5. Chain Replication 在对象存储、TAO 的高吞吐链式复制。 A 写请求需要所有副本多数派确认,复杂度高 B 写确认在 Tail 完成,读由 Tail 服务,保持一致且实现简单 ✓ 正确答案 C 每个副本都需要与所有其他副本全互联交换 D 链式复制无法保证写顺序一致
# 6. Chained Replication 在不同分片链的并行性工程实现。 A 所有分片共享同一条复制链,串行执行写操作 B 分片链无法进行读扩展 C 跨链事务完全不需要协调 D 分片内顺序、分片间并行,通过 key 路由到对应链 ✓ 正确答案
# 7. Chandy-Lamport Snapshot 算法在分布式系统全局快照的捕获。 A 算法记录每个进程状态及通道中在 marker 之前收到的消息,得到一致快照 ✓ 正确答案 B 快照必须严格对应某个真实时刻 C 算法要求通信信道是非 FIFO 的 D 算法需要暂停所有进程才能捕获状态
# 8. Hammer Replication 在多主复制的工程边界。 A 多主复制完全消除写冲突,无需冲突解决 B 多主复制只能用于强一致场景 C 多主复制与单主复制在写路径上完全等价 D 多主复制提升写可用性,但引入冲突解决与一致性的复杂度 ✓ 正确答案
# 9. HotStuff 在 Chained HotStuff 优化的 2 轮消息复杂度。 A 其消息复杂度为 O(n²),与 PBFT 相同 B 通过星型拓扑与流水线化,将每轮消息复杂度降到 O(n) ✓ 正确答案 C 摒弃 leader,所有节点两两交换 D view-change 需要 O(n²) 次通信
# 10. PRAM(Parallel Random Access Machine)在并行计算的理论模型。 A PRAM 用共享内存模型抽象并行计算,但忽略通信与同步开销 ✓ 正确答案 B PRAM 假设处理器之间通过消息传递通信,无共享内存 C PRAM 只有一种并发读写变体 D PRAM 考虑了真实硬件的内存带宽
# 11. PreVote 在分区恢复期避免无意义选举的工程改进。 A PreVote 只影响日志恢复,不影响选举 B PreVote 会跳过 term 自增,直接当选 C PreVote 在正式选举前先确认多数派支持,避免被隔离节点无意义自增 term ✓ 正确答案 D PreVote 放弃了多数派确认
# 12. Ring Paxos、Mencius、Nezha 在不同网络拓扑下的工程取舍。 A Mencius 通过为每节点分配命令槽位降低 leader 瓶颈,适合广域网 ✓ 正确答案 B 三者都假设网络拓扑是均匀的,不需要感知 C Ring Paxos 中环上节点故障不影响任何消息 D Nezha 面向广域网而非数据中心
# 13. Termination Detection 在分布式算法的终止判定(Chandy-Lamport 标志法)。 A 权重不需要守恒,可随意增减 B 只要所有进程都被动就必然终止,无需考虑在途消息 C 通过维护守恒的权重,判断是否还有在途消息后判定终止 ✓ 正确答案 D 终止检测只能在同步模型下进行
# 14. EPaxos(Egalitarian Paxos)在去中心化、命令依赖图与并发执行。 A 有固定 leader 串行化所有命令 B EPaxos 只支持冲突命令 C 无固定 leader,利用命令依赖图并发执行无冲突命令 ✓ 正确答案 D 所有命令必须串行执行,无法并发
# 15. Fast Paxos 在跳过 Prepare 阶段的直接 Accept 与冲突恢复。 A 跳过 Prepare 直接 Accept,冲突时回退到经典 Paxos 收敛 ✓ 正确答案 B 每轮都必须先 Prepare 再 Accept C Fast Paxos 无法处理并发冲突 D Fast Paxos 比经典 Paxos 多一次往返
# 16. Flexible Paxos 在 R + W > N 之外的多数仲裁灵活配置。 A 要求 Prepare 与 Accept 的 quorum 都超过半数 B 放宽仲裁后安全性无法保证 C 只要任意 Prepare quorum 与任意 Accept quorum 相交即可保证安全 ✓ 正确答案 D 只允许一个固定 quorum
# 17. Lamport Paxos 的 Prepare / Promise / Accept / Accepted 四阶段工程语义。 A Prepare 阶段直接提交值,无需确认 B 四阶段之间没有编号约束 C Accept 阶段提交的值必须采纳 Promise 中最高编号的已接受值 ✓ 正确答案 D 接收者无需承诺任何编号
# 18. Multi-Paxos 在重复提案的优化与 leader 选举。 A 每个槽位都必须完整执行 Prepare 阶段 B 稳定 leader 下仅首个槽位执行 Prepare,后续直接 Accept ✓ 正确答案 C Multi-Paxos 不需要 leader 分配槽位 D leader 故障后无需重新 Prepare
# 19. PBFT 在 f 个恶意节点需要 3f+1 总节点的复杂度来源。 A 3f+1 是针对故障节点而非恶意节点的 B 只需 2f+1 个总节点即可 C 为容忍 f 个恶意节点,需至少 3f+1 个总节点 ✓ 正确答案 D 恶意节点数不影响总节点数
# 20. PBFT 的 view-change 在主节点切换的工程实现。 A 主节点故障时由主节点自身发起切换 B 新主节点需收集 f+1 个 view-change 消息并携带证明后切换 ✓ 正确答案 C view-change 会丢弃已提交的决策 D 只需一个节点即可触发 view-change
# 21. Quorum Paxos 在不同 quorum size 下的活性与安全性。 A quorum 大小不影响活性 B 任意两个 quorum 必须相交才能保证安全性 ✓ 正确答案 C quorum 越小越好,无需考虑相交性 D quorum 越大可达成性越高
# 22. Raft Log Compaction 在快照与 InstallSnapshot RPC 的实现。 A 快照只影响状态机,不影响日志保留 B 快照之后日志不必再保留,落后节点通过 InstallSnapshot 追赶 ✓ 正确答案 C InstallSnapshot 只能由 follower 发起 D 日志永远不能压缩
# 23. Raft 在 etcd、Consul、CockroachDB、TiKV 的工程化部署。 A Raft 只用于协调,不负责数据复制 B Raft 只适用于单机存储 C Raft 无法与事务结合 D etcd、TiKV 等用 Raft 复制数据分片以保证强一致 ✓ 正确答案
# 24. Raft 在网络分区恢复后的日志追赶与冲突解决。 A 冲突日志由 follower 决定为准 B follower 拒绝不匹配的日志后,leader 回溯 nextIndex 直至匹配再追加 ✓ 正确答案 C Raft 不检测日志冲突 D leader 直接覆盖 follower 全部日志
# 25. Raft 的 Joint Consensus 在成员变更的工程语义。 A Joint Consensus 只支持单节点变更 B 成员变更直接切换,无需过渡 C 通过新旧配置联合多数派过渡,避免成员变更期双主 ✓ 正确答案 D 联合阶段只需要新配置多数派
# 26. Raft 的工程化与 leader 强一致读的性能瓶颈。 A 强一致读必须走完整日志复制,无法优化 B 强一致读无需 leader 与多数派交互 C 可用 ReadIndex 或 Lease Read 降低读开销,但 leader 仍是瓶颈 ✓ 正确答案 D 任何 follower 都能直接提供强一致读
# 27. Tangaroa 在 Byzantine 抗性下的 Paxos 变体。 A 与 Raft 一样只需 2f+1 个节点 B 不关心恶意节点,只处理故障节点 C 是 Raft 的拜占庭容错变体,引入消息认证与验证 ✓ 正确答案 D 摒弃 leader 模型