2 回答

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超3個(gè)贊
要判斷誰(shuí)是【最新版本】并不容易。在網(wǎng)絡(luò)上,你不能保證時(shí)鐘是同步的。
目前我改成所有更新到服務(wù)器的數(shù)據(jù),都用服務(wù)器時(shí)間來(lái)更新時(shí)間戳,然后將該時(shí)間返回給客戶端,客戶端修改自己數(shù)據(jù)的時(shí)間跟服務(wù)器上一樣

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊
自己沒(méi)有動(dòng)手試過(guò),但是也許可以試一下類(lèi)似Git的同步方式?commit和update分離。 服務(wù)器端記錄所有的更新/提交信息,客戶端記錄從上一次的同步時(shí)間(如果有的話)后最終的修改記錄(添加/刪除應(yīng)該是一樣的),然后客戶端把修改記錄發(fā)給服務(wù)器(同一賬戶的多客戶端可以通過(guò)消息隊(duì)列的方式排隊(duì)進(jìn)行更新),當(dāng)然,只有最后一個(gè)commit后發(fā)送更新請(qǐng)求的客戶端能獲得全部更新
當(dāng)然,遺留問(wèn)題就是指向同一個(gè)文件的不同修改造成的沖突的問(wèn)題,沒(méi)想好該怎么處理……要不和git一樣提醒用戶自己手動(dòng)解決?
- 2 回答
- 0 關(guān)注
- 518 瀏覽
添加回答
舉報(bào)