advanced
Distributed Consensus Algorithm Design
Design a custom consensus protocol for a geographically distributed database handling Byzantine faults.
📝 Содержимое промпта
Act as a Principal Software Architect specializing in distributed systems. Design a custom consensus protocol for a database that needs to remain consistent across data centers located in London, New York, and Tokyo. The protocol must handle network partitions (high latency up to 500ms) and up to f faulty nodes (Byzantine faults). Explain the state machine replication process, the leader election mechanism, and the safety and liveness proofs in detail. Discuss how you would handle log compaction and snapshotting