weblab-tw / ddia-study-group

Designing Data-Intensive Applications Study Group
36 stars 4 forks source link

第五章節 - 衝突 - Taco #62

Open taco0929 opened 2 years ago

taco0929 commented 2 years ago

想先分享老闆之前幫別人做的共用表單的經驗:

系統的表單可以給很多人讀取,一個人編輯完後會自動更新至DB,但當檢測到衝突時,會詢問用戶如何做衝突處理(類似git merge conflict,但因為客戶不是工程師,所以實際上他們遇到衝突就是直接Overwrite。因此我感覺雖然設計很多機制去保持資料的正確性很重要,但似乎有時候使用者不在乎那麼多?就像FB用戶,我因爲無從知道自己以外的人的操作行為,所以我只在乎能不能夠馬上看到我自己的留言、發文等等;其他人的留言就算延遲很久我才看到,或是順序顛倒等並不會太影響到我的使用者體驗

另外想請問因為敝司的產品目前多為2b,讀寫資料比較少,也因此沒有遇到衝突的問題。但我自己覺得是不是LWW就已經能解決大部分的問題?但例如書中最後購物車的例子,我猜要避免這個問題就是讓每個使用者都是獨立的用戶以避免衝突?