If you want to update this page or add new content, please submit a pull request to the Homepage.

Internals

This section explains how Yorkie works under the hood and how to deploy it at scale. These topics are for those who want a deeper understanding of Yorkie's CRDT engine, synchronization mechanisms, and production infrastructure.

Topics

  • CRDT Concepts: Understand how Yorkie uses CRDTs for conflict-free collaboration, including data structure hierarchy, logical clocks, elements, nodes, tombstones, and garbage collection
  • Synchronization: Learn how Yorkie keeps document replicas consistent through sync modes, PushPullChanges, checkpoints, snapshots, and the watch stream
  • Document Lifecycle: Understand the state transitions of documents and clients, from attachment through detachment and removal
  • YSON: Learn about Yorkie Structured Object Notation, the data format used to represent documents with specialized types for collaborative editing
  • Cluster Mode: Deploy Yorkie in production with sharded cluster mode, consistent hashing, leader election, and MongoDB sharding
  • Housekeeping: Learn how the background service deactivates inactive clients for garbage collection and compacts documents to reduce storage overhead

Prerequisites

Before exploring these topics, ensure you have:

  1. Completed the Getting Started guide
  2. Built at least one application using Yorkie SDKs
  3. Understood basic concepts like Client, Document, and Channel
  4. Reviewed Configuration topics and the Glossary