Как реализовать collaborative editing?

Senior
33 просмотров
AFK Offer AI

Два основных подхода: OT (Operational Transformation) — трансформирует операции относительно друг друга, используется в Google Docs. CRDT — каждый символ имеет уникальную позицию, не требует центрального сервера. OT проще для клиент-серверной модели. CRDT лучше для P2P. В Go на сервере обычно OT: получаешь операцию, трансформируешь против concurrent операций, применяешь и рассылаешь. Yjs — популярная CRDT библиотека для фронтенда.

Следующий вопрос

Что такое speculative execution?