天天看點

分布式架構核心概念

分布式架構核心概念

  • RPC(Remote Procedure Call)遠端過程調用。

1、允許兩個節點之間像調用本地服務一樣調用遠端服務;

2、RPC的目标是讓遠端調用更簡單、透明;

3、RPC架構負責封裝底層傳輸方式(TCP/UDP協定)、序列化方式(json/xml/二進制)和通信細節,開發者不需要關系底層。

  • RESTful(Representational State Transfer)表述性狀态轉移

1、一個架構符合REST限制條件和原則,就是RESTful架構;

2、目前隻有HTTP+JSON是常用到的RESTful架構。

  • CAP原理

1、A(Availability):可用性(保證每個請求不管成功或者失敗都有響應);

2、C(Consistency):一緻性(在分布式系統中的所有資料備份,在同一時刻是否同樣的值);

3、P(Partiton tolerance):分區容忍性(系統中任意資訊的丢失或失敗不會影響系統的繼續運作);

4、CAP原理的結論:任何一個分布式系統都不可能同時滿足這三個條件,隻能在其中兩個條件進行取舍。

5、關于CAP的了解:

A(可用性):在分布式中可以通過多個節點去實作;

B(一緻性):在分布式中使用NOSQL等各種技術保證每個節點資料一緻;

P(分區容忍性):使用異常或者熔斷等使每個請求都能得到響應。

6、關于CAP原理運用的了解:

針對客戶體驗,在可預知各種問題情況,和網絡和伺服器當機等不可遇見的情況下,都要首選保證系統是可運作的,是以一般P是必選項;A和C都需要根據各個系統需求情況去取舍,或者是需要“弱”A和“弱”C;

備注:CAP原來一般是“強”可用性,“強”一緻性,“強”分區容忍性。