We Put a Distributed Database In the Browser – And Made a Game of It!
Blog post from TigerBeetle
TigerBeetle is a distributed financial transactions database designed for critical safety, which has now been made accessible through a WebAssembly-compiled simulation in browsers, allowing users to observe how it handles various conditions such as perfect environments, network and process faults, and even extreme storage corruption. The system employs a Deterministic Simulator called the Viewstamped Operation Replicator (VOPR), drawing inspiration from fuzz testing and deterministic simulation methods to uncover and reproduce complex bugs in distributed systems. This simulator can accelerate time, providing significant real-world testing time in a shortened simulation period, while testing TigerBeetle's Viewstamped Replication consensus protocol under different scenarios. The simulation is designed to be engaging and educational, utilizing graphical gaming elements to demonstrate the robustness and recovery capabilities of TigerBeetle under extreme conditions, and is supported by a range of research and development efforts, including contributions from the Zig programming community.