【りあるたいむきょうどうへんしゅう】

リアルタイム共同編集 とは?

最終更新:
💡 離れていても、一つのノートを一緒に書き進める仕組み

リアルタイム共同編集は、複数人が同じ文書などを編集し、変更を同期して作業する機能です。変更の配信と統合、通信の遅延、権限や履歴の確認を説明します。

📌 このページのポイント
同じノートを、一緒に編集利用者A利用者B変更を送る受け取る変更を送る受け取る変更の同期・統合CRDT / OTなど通信方式と統合のルールは別の役割通信が切れている間は、相手へ届かない
同期・統合の経路を簡略化した例で、中央サーバーが必須という意味ではありません。通信には遅延があり、編集権限や再接続後の反映はアプリの条件によります。
ひよこ ひよこ
同じ文書を一緒に書けるのはなぜ?
ペンギン先生 ペンギン先生
それぞれの変更をほかの参加者へ届け、同じ文書に反映する仕組みがあるからだよ。Googleドキュメントなどで見かけるね。通信には時間がかかるので、どんな環境でも遅れなく見えるという保証ではないんだ。
ひよこ ひよこ
必ずWebSocketで送るの?
ペンギン先生 ペンギン先生
WebSocketは使われる方式の一つだけれど、すべて同じではないよ。たとえばYjsにはWebSocketやWebRTCなどの接続用の道具がある。変更を届ける通信と、変更を統合するアルゴリズムを分けて考えよう。
ひよこ ひよこ
同時に同じ場所を直しても大丈夫?
ペンギン先生 ペンギン先生
CRDTやOTなどのルールで変更をまとめる実装があるよ。YjsはCRDT、ShareDBはOTを使う例。ただし、技術的に整合した状態にできることと、文章が書き手全員の意図どおりになることは別なんだ。
ひよこ ひよこ
オフラインのまま相手にも見える?
ペンギン先生 ペンギン先生
切断中の変更はその場で相手へ届かないよ。再接続後の同期を扱う実装もあるけれど、保存や復帰の条件はアプリによる。共有範囲と編集権限も確認し、反映が完了したかを画面で確かめよう。
ひよこ ひよこ
カーソルが見えるのも文書の変更?
ペンギン先生 ペンギン先生
参加者の場所や状態を示す情報で、本文の変更とは別に扱うことがあるよ。誰がどこを編集しているかがわかると作業しやすい。編集する範囲を相談し、必要に応じて履歴やコメントも使おう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「リアルタイム共同編集」って出てきたら「離れた人と同じ文書を一緒に書き進める仕組み」と思えばだいたいOK!
📖 おまけ:英語の意味
「Real-time Collaboration」 = リアルタイムでの共同作業
💬 「Real-time(即時)」と「Collaboration(共同作業)」を組み合わせた言葉で、そのまま日本語訳が定着しているよ。

参考資料

← 用語集にもどる