星型結構數據一致性的問題(數據同步有可能衝突)

在改版的過程中遇到一個難題,運營要求用戶在管理狀態和瀏覽狀態使用相同的URL地址,不能像原先使用不同的域名,這個問題對我們可真是一個難題,由於網站訪問量比較大,瀏覽狀態下不可能不用緩存,但卻要在登陸狀態下不使用緩存,所以只能從cookie來判斷(同事用nginx做的分組),但要求時時的數據不能從分點直接查北京的庫,不然相應慢不說還很消耗專線帶寬,看老大的意識是把輔庫從北京挪到各各分點,來減少專線帶寬的壓力,但是由於主庫和輔庫距離比較遠數據同步又是一大難題啊(我還真就沒測試過,如果在毫秒級的那這些擔心都沒有了),本想說服老大采用JS方式做呈現的,但大家都覺得很麻煩,效果也不好(對SEO不好,請求次數過多,頁面載入過程中一堆loading,弄不好卡住了還會出錯,qqzone就是一個巨大的失敗,但163的郵箱做的比較不錯),只好作罷,下面是結構的一個基本的想法,但如果像圖中所說的優先更新用戶所在地點的輔庫,數據一致性真的很擔心,當前還不知道好的處理辦法,圖中當有寫操作的時候,優先更新用戶所在分點的db,但當數據中心進行同步的時候,不同分點可能會有數據不一致的地方或索引衝突,途中註釋是當前僅知道的解決辦法,但程序變動比較大,真不知道什麼好的方法解決數據同步這個衝突的問題。 網站型星結構 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章