import { Callout } from 'nextra/components';

# Overview

ResilientDB (incubator-resilientdb) is a **fault-tolerant** distributed database system.
It uses multiple server copies (_replicas_) that communicate over a network to agree on the correct order of operations (transactions).
This agreement process, called **consensus** (often using PBFT), ensures that the database remains _consistent and available_ even if some replicas crash or behave incorrectly.
External applications interact with the database through **client libraries** to store and retrieve data reliably.

**Source Repository:** [Apache ResilientDB](https://github.com/apache/incubator-resilientdb)

```mermaid
flowchart TD
    A0["ResilientDB Configuration (ResDBConfig)"]
    A1["Consensus Management (ConsensusManager)"]
    A2["Network Communication (ReplicaCommunicator / ServiceNetwork)"]
    A3["Transaction Execution (TransactionManager / TransactionExecutor)"]
    A4["Client Interaction (KVClient / UTXOClient / ContractClient / TransactionConstructor)"]
    A5["Storage Layer (Storage / LevelDB / MemoryDB)"]
    A6["Checkpointing & Recovery (CheckPointManager / Recovery)"]
    A7["Message/Transaction Collection (TransactionCollector / MessageManager)"]
    A0 -- "Configures" --> A1
    A0 -- "Configures" --> A2
    A0 -- "Configures" --> A4
    A0 -- "Configures" --> A6
    A1 -- "Uses (for consensus messages)" --> A2
    A1 -- "Orchestrates" --> A3
    A1 -- "Uses (for state stability)" --> A6
    A1 -- "Uses (for message handling)" --> A7
    A2 -- "Delivers messages to" --> A1
    A3 -- "Uses" --> A5
    A4 -- "Uses (to send requests)" --> A2
    A5 -- "Used by" --> A6
    A7 -- "Triggers" --> A3
```

## Chapters

1. [Client Interaction](resilientdb/chapters/01_client_interaction.md)
2. [Network Communication](resilientdb/chapters/02_network_communication.md)
3. [Consensus Management](resilientdb/chapters/03_consensus_management.md)
4. [Message/Transaction Collection](resilientdb/chapters/04_message_transaction_collection.md)
5. [Transaction Execution](resilientdb/chapters/05_transaction_execution.md)
6. [Storage Layer](resilientdb/chapters/06_storage_layer.md)
7. [Checkpointing & Recovery](resilientdb/chapters/07_checkpointing.md)
8. [ResilientDB Configuration](resilientdb/chapters/08_resilientdb_configuration.md)

---

Generated by [AI Codebase Knowledge Builder](https://github.com/The-Pocket/Tutorial-Codebase-Knowledge)
