Use MicroRaft when
- you need a CP core inside a Java service
- you want to own transport and persistence
- you care about explicit failure semantics
Embed a CP core inside your Java service when metadata, coordination, or lock state must stay strongly consistent.
Run one local test to see leader election, quorum, and commit behavior from the repository root.
./gradlew :microraft-tutorial:test \
--tests io.microraft.tutorial.OperationCommitTest
Use this order if you are seeing MicroRaft for the first time.
These are the clearest fits for an embeddable Java Raft core.
Keep shard maps, ownership records, and cluster metadata strongly consistent.
View recipeDrive control-plane decisions, registrations, elections, and state transitions with ordered commits.
View recipeBuild fencing-token-based lock services with explicit consistency and failure semantics.
View recipeMove from fit to rollout only when you need that level of detail.
Read the positioning, tradeoffs, and use-case guidance before you commit to an embeddable CP core.
Open guideGet short answers on fit, scope, and what MicroRaft is not.
Open FAQValidate persistence, observability, transport, and failure handling before rollout.
Open checklistGo straight to GitHub and Javadoc when you want implementation detail instead of onboarding guidance.
Open source and API