dragonboat
A feature complete and high performance multi-group Raft library in Go.
Discover how Dragonboat ensures linearizability for concurrent reads and writes using its Raft Read-Index protocol and at-most-once semantics for client sessions. Learn more today.
How to Use Dragonboat’s Repair Tool to Recover from Permanent Quorum LossRecover from permanent quorum loss in Dragonboat using the repair tool. Import snapshots, rewire membership, and restart nodes to form a new quorum.
Dragonboat SnapshotEntries vs CompactionOverhead: Configuration and Behavior DifferencesUnderstand SnapshotEntries and CompactionOverhead differences in Dragonboat. Learn how to configure snapshot frequency and optimize log compaction for lagging followers.
Dragonboat Storage Engines: Pebble, Tan, and Custom Configuration GuideExplore Dragonboat storage engines: Pebble, Tan, and custom configurations. Learn how to set up your Raft logs with NodeHostConfig Expert for optimal performance.
How to Tune MaxInMemLogSize in Dragonboat to Prevent Memory ExhaustionEffectively tune MaxInMemLogSize in Dragonboat to prevent memory exhaustion. Learn essential settings to bound memory usage and avoid errors.
Dragonboat Leadership Transfer: How Raft Nodes Hand Off Control SafelyLearn how Dragonboat's three-layer pipeline validates log consistency for safe leadership transfer and split brain prevention during Raft node elections.
How to Implement a Custom State Machine in Dragonboat with Snapshot SupportImplement a custom state machine in Dragonboat with snapshot support. Learn how to integrate IStateMachine or IOnDiskStateMachine and its snapshot lifecycle methods for robust data persistence.
When to Enable Quiesce Mode in Dragonboat: A Complete GuideEnable Dragonboat Quiesce mode for bursty or idle Raft shards to cut network traffic and CPU use after inactivity while ensuring safety. Learn when and why.
How to Safely Perform Dynamic Membership Changes in a Dragonboat ClusterSafely add or remove nodes in a Dragonboat cluster. Learn the step by step procedure for dynamic membership changes to ensure quorum safety and maintain cluster integrity.
How the PreVote Mechanism in Dragonboat Prevents Split-Brain ScenariosLearn how Dragonboats PreVote mechanism prevents split-brain scenarios. This dry-run election ensures quorum feasibility, keeping your cluster stable and avoiding leader failures.
How to Integrate and Use Prometheus Metrics Exported by Dragonboat for Cluster MonitoringLearn to integrate Prometheus metrics from Dragonboat for robust cluster monitoring. Enable metrics in NodeHost and expose them via HTTP for Prometheus scraping. Monitor your Dragonboat cluster effectively.
How Dragonboat's Internal Pipeline and Batching Mechanisms Maximize ThroughputDiscover how Dragonboat's internal pipeline and batching mechanisms maximize throughput by decoupling replica processing with staged pipelines and aggressively batching messages and log entries.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →