您好,登錄后才能下訂單哦!
本篇內容主要講解“BASE理論是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“BASE理論是什么”吧!
BASE理論是Basically Available(基本可用),Soft State(軟狀態)和Eventually Consistent(最終一致性)三個短語的縮寫。BASE 理論是對 CAP 中一致性和可用性權衡的結果,其核心思想是:既是無法做到強一致性(Strong consistency),但每個應用都可以根據自身的業務特點,采用適當的方式來使系統達到最終一致性(Eventual consistency),BASE理論是CAP理論中AP的延伸。
BASE理論它的核心就是基本可用(Basically Available)和最終一致性(Eventually consistent)。而軟狀態描述的是實現服務可用性的時候系統數據的一種過渡狀態,也就是說不同節點間,數據副本存在短暫的不一 致。軟狀態是一種中間過渡狀態。
當分布式系統在出現不可預知的故障時,允許損失部分功能的可 用性,保障核心功能的可用性。
12306 訂票系統基出售不同區域的票,將訪問請求錯開,削弱請求峰值。在春運期間,深圳出發的火車票在 8 點開售,北京出發的火車票在9點開售。分布式消息隊列的一個主要功能就是削峰。
正常情況下的搜索引擎0.5秒即返回給用戶結果,而基本可用的搜索引擎可以在2秒作用返回結果。通過犧牲響應時間的可用性,保證核心功能的運行
用小圖片來替代原始圖片,通過降低圖片的清晰度和大小,提升系統的處理能力。淘寶在雙十一早期會關閉購物歷史記錄查詢能力
接收到的請求放在指定的隊列中排隊處理,如果請求等 待時間超時了(假設是 100ms),這個時候直接拒絕超時請求;再比如隊列滿了之后,就 清除隊列中一定數量的排隊請求,保護系統不過載,實現系統的基本可用
不可能一直是軟狀態,必須有個時間期限。在期限過后,應當保證所有副本保持數據一致性,從而達到數據的最終一致性。這個時間期限取決于網絡延時、系統負載、數據復制方案設計等等因素。最終一致性分為5種:
因果一致性指的是:如果節點A在更新完某個數據后通知了節點B,那么節點B之后對該數據的訪問和修改都是基于A更新后的值。于此同時,和節點A無因果關系的節點C的數據訪問則沒有這樣的限制。
讀己之所寫指的是:節點A更新一個數據后,它自身總是能訪問到自身更新過的最新值,而不會看到舊值。其實也算一種因果一致性。
會話一致性將對系統數據的訪問過程框定在了一個會話當中:系統能保證在同一個有效的會話中實現 “讀己之所寫” 的一致性,也就是說,執行更新操作之后,客戶端能夠在同一個會話中始終讀取到該數據項的最新值。
單調讀一致性指的是:如果一個節點從系統中讀取出一個數據項的某個值后,那么系統對于該節點后續的任何數據訪問都不應該返回更舊的值。
單調寫一致性指的是:一個系統要能夠保證來自同一個節點的寫操作被順序的執行。
在實際的實踐中,這5種系統往往會結合使用,以構建一個具有最終一致性的分布式系統。
實際上,不只是分布式系統使用最終一致性,關系型數據庫在某個功能上,也是使用最終一致性的。比如備份,數據庫的復制過程是需要時間的,這個復制過程中,業務讀取到的值就是舊的。當然,最終還是達成了數據一致性。這也算是一個最終一致性的經典案例。幾乎所有的互聯網系統采用的都是最終一致性,只有在實在無法使用最終一致性,才使用強一致性或事務,比如,對于決定系統運行的敏感元數據,需要考慮采用強一致性,對于與錢 有關的支付系統或金融系統的數據,需要考慮采用事務。
到此,相信大家對“BASE理論是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。