自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

釘釘文檔協(xié)同編輯背后的核心技術(shù)原理

網(wǎng)絡(luò)
有人說,互聯(lián)網(wǎng)給人類社會帶來最深層次的變革是改變了人與人協(xié)作的方式,將信息傳播的成本大幅降低。身在互聯(lián)網(wǎng)行業(yè)之中,研究信息傳播的方式方法,是我們的日常功課。

有人說,互聯(lián)網(wǎng)給人類社會帶來最深層次的變革是改變了人與人協(xié)作的方式,將信息傳播的成本大幅降低。身在互聯(lián)網(wǎng)行業(yè)之中,研究信息傳播的方式方法,是我們的日常功課。
信息傳播的方式,按照時序效果,可分為同步和異步兩類。

信息的同步傳播

信息被生產(chǎn)的同時被消費。

話出我之口,入你之耳,過了此時此刻,想還原此情此景,麻煩得很,大多時候也不需要。同步場景下,信息的生產(chǎn)往往不需要深思熟慮,而是通過你來我往的討論,澄清,逐步勾勒出話題的全貌。表達(dá)的時效性較之方式的豐富性更為重要。典型的場景如即時通訊,語音通話,視頻會議等。簡單明了,沒有太多的格式。

信息的異步傳播

信息的生產(chǎn)和消費異步發(fā)生。

典型的場景如論壇,博客,文檔庫,郵件。我在寫這篇文檔的時候,你們看不到。你們看的時候,我早已寫完。異步場景下,信息的生產(chǎn)者會謹(jǐn)慎的推敲措辭,以確保自己的意思被準(zhǔn)確的傳達(dá)。表達(dá)方式的豐富性很重要,除了文本以外,段落結(jié)構(gòu),列表,示意圖,表格都有利于信息的準(zhǔn)確表達(dá)。

文檔的信息表達(dá)方式

傳統(tǒng)文檔的信息表達(dá)方式是典型的異步傳播。上述的幾類異步場景都可見文檔的影子。
然而2016年3月,Google上線的Google Docs顛覆了這個結(jié)論,這個改變世界的功能就是“多人實時編輯”,或者稱作“協(xié)同編輯”。引入了協(xié)同編輯的在線文檔,就像一塊兒在線的白板,使得身處世界兩端的人可以在上面共同迭代一個內(nèi)容,通過你來我往的信息反饋,實現(xiàn)信息的同步傳播。而編輯的結(jié)果又將沉淀下來,成為信息異步傳播的載體。

兼具信息同步與異步傳播的能力,協(xié)同文檔的誕生,無疑給基于互聯(lián)網(wǎng)的溝通協(xié)作帶來了一場革命。
這場革命爆發(fā)于2006年,而它的起源,早在17年前。

1989年,代表著“文檔”的Microsoft Office第一次在Macintosh系統(tǒng)上與世人見面,而代表著“協(xié)同”的操作變換算法也第一次見諸論文。
Microsoft Office 中所周知,而操作變換算法又是什么呢?

數(shù)據(jù)一致性問題與操作變換算法

對協(xié)同編輯最簡單的理解類似于群聊天,每個人在自己的電腦上修改文檔,把操作群發(fā)給其他打開這篇文檔的用戶。當(dāng)收到來自其他用戶的操作時,重放這個操作。比如下面這個例子:

但美好的設(shè)想,難免遭遇現(xiàn)實的挑戰(zhàn)。因為網(wǎng)絡(luò)存在延遲,來自不同用戶的操作有可能在各端有不同的執(zhí)行順序。相同的操作,不同的執(zhí)行順序,會產(chǎn)生不同的結(jié)果。比如:

數(shù)據(jù)一致性是協(xié)同編輯的最低要求。當(dāng)然,我們可以強制操作按照到達(dá)服務(wù)器的時間來排序,但這種排序會破壞用戶編輯當(dāng)時的上下文,產(chǎn)生不符合用戶預(yù)期的編輯效果。
操作變換算法就在這里被引入了。

操作變換算法不是一個算法,而是對一類算法的統(tǒng)稱。它們針對不同的文檔數(shù)據(jù)模型,解決一個相同的問題:
基于同一個狀態(tài)的兩個操作,如何調(diào)整一個操作的參數(shù),使得它可以在另一個操作之后執(zhí)行,表達(dá)同樣的用戶意圖。
上面的例子加上了操作變換,就可以解決數(shù)據(jù)一致性的問題,如下圖所示:

當(dāng)然,協(xié)同文檔和操作變換算法的水還是很深的。本文只是對基本原理做個簡單的介紹。想要了解更多,可以參考以下文獻(xiàn):

Operational Transformation Frequently Asked Questions and Answers
南洋理工大學(xué)教授Chengzheng Sun的Survey,覆蓋了OT領(lǐng)域絕大多數(shù)研究成果

Google Wave Operational Transformation
G-Suite協(xié)同引擎的協(xié)議白皮書

Achieving convergence,causality-preservation, and intention-preservation in real-time cooperative editing systems
GOT算法及一維數(shù)據(jù)操作變換算法論文

Context-based Operational Transformation in Distributed Collaborative Editing Systems
COT算法論文

結(jié)語

2006年3月,Google Docs上線,多人實時協(xié)同編輯的功能驚艷世界,讓穩(wěn)坐辦公套件頭把交椅的 Microsoft Office 也感到虎軀一震。Office奮起直追,但同等功能的 Office 365 上線已是五年之后。協(xié)同編輯究竟是怎樣的一座堅城,讓兵強馬壯的微軟止步了五年之久?做一款協(xié)同編輯器需要哪些核心技術(shù)?協(xié)同編輯技術(shù)對于普通的前端應(yīng)用開發(fā)會有怎樣的啟發(fā)? 在 D2 ,與大家分享更多技術(shù)原理與實踐。

責(zé)任編輯:梁菲 來源: 阿里云開發(fā)者社區(qū)
相關(guān)推薦

2016-09-06 18:20:43

存儲

2020-02-17 15:17:57

釘釘

2021-05-29 14:14:16

阿里云釘釘低代碼開發(fā)

2013-07-30 12:29:19

Google App Google技術(shù)Engine

2020-06-10 14:01:46

阿里云釘釘Windows

2018-03-21 11:05:26

Spark大數(shù)據(jù)應(yīng)用程序

2018-08-10 12:56:00

大數(shù)據(jù)

2023-08-22 20:48:06

模型釘釘阿里云

2017-05-14 14:41:20

5G波束基站

2011-04-15 17:43:15

Google App Google

2022-12-06 08:00:16

awscli工具監(jiān)控

2025-03-31 08:15:00

LLM大型語言模型人工智能

2022-05-11 12:52:25

框架實踐應(yīng)用

2017-03-01 18:19:33

釘釘

2018-08-07 11:51:27

釘釘

2018-07-03 15:03:50

2018-07-16 12:22:42

白熊視頻
點贊
收藏

51CTO技術(shù)棧公眾號