使用者工具

網站工具


learn:distributed-system

差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

兩邊的前次修訂版前次修改
下次修改
前次修改
learn:distributed-system [2022/05/14 07:35] admin_wi1d5kylearn:distributed-system [2022/05/14 10:37] (目前版本) admin_wi1d5ky
行 41: 行 41:
 1. Node 增加時會產生 overhead 1. Node 增加時會產生 overhead
 2. Node 之間的距離 2. Node 之間的距離
 +
 +---
 +## 面對分散式系統的兩個常用技巧: Partition 和 Replicate
 +
 +- Partition: 把資料切成多個小塊
 +- Replicate: 把資料複製多份
 +
 +### 對 Performance & Availability 的影響
 +
 +|              | Partition     | Replicate    |
 +| Performance  | 降低搜尋的目標集 | 增加存取吞吐量 |
 +| Availability | 縮窄損害範圍    | 提供備援資料   |
 +
  
 --- ---
  
 ## 建立抽象模型以解決分散式系統問題 ## 建立抽象模型以解決分散式系統問題
 +
  
 例子: 例子:
行 52: 行 66:
 - Consistency model (strong, eventual) - Consistency model (strong, eventual)
  
-### 如何評估抽象化:兩個面向 - 易理解程度 & 成本考量+### 兩個面向評估抽象化:易理解程度 & 成本考量
  
 - 易理解程度: 盡可能像是在用單台電腦 - 易理解程度: 盡可能像是在用單台電腦
 - 成本考量: 越像一台電腦,成本越高 - 成本考量: 越像一台電腦,成本越高
  
-### 什麼叫「抽象+ 
 +### 什麼叫「抽象程度
  
 一般日常中,聽到「你講得很抽象」跟這邊指的不是同一件事。 一般日常中,聽到「你講得很抽象」跟這邊指的不是同一件事。
行 63: 行 78:
 可以先把這邊講的抽象想成是「簡化事情的複雜程度」。 可以先把這邊講的抽象想成是「簡化事情的複雜程度」。
  
-所以「A 比 B 抽象」,指的是 A 刻意忽視了 B 的某些細節,以方便管理,所以 A 更易於理解。+所以「A 比 B 抽象程度」,指的是 A 刻意忽視了 B 的某些細節,以方便管理,所以 A 更易於理解。
  
 > 當我們每次進行抽象化時,都會失去對一些東西的掌握;假如遇到某些效能瓶頸時,還是得往實際面去解決,這時候就得重新審視那些被忽略的地方。 > 當我們每次進行抽象化時,都會失去對一些東西的掌握;假如遇到某些效能瓶頸時,還是得往實際面去解決,這時候就得重新審視那些被忽略的地方。
- 
- 
- 
-## 兩個技巧: Partition 和 Replicate 
- 
-- Partition: 把資料切成多個小塊,降低搜尋的目標集、縮窄損害範圍 
-- Replicate: 把資料複製多份,增加存取吞吐量、提供備援資料 
- 
-Replicate 很好用,只是需考量「一致性」(CAP 理論 的 Consistency),但就是要權衡考量的部分。(為了可用性降低資料同步等等) 
- 
---- 
- 
- 
  
  
learn/distributed-system.1652513714.txt.gz · 上一次變更: 2022/05/14 07:35 由 admin_wi1d5ky

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki