阿里P8架构师谈:分布式、集群、负载均衡、分布式数据一致性的区别与关联
服務器集群:
1.集群概念
集群就是一組相互獨立的計算機,通過高速的網絡組成一個計算機系統。服務器集群就是指將很多服務器集中起來一起進行同一種服務,在客戶端看來就像是只有一個服務器。
2.集群的特點和優勢
1)高性能
比如上千臺服務器同時計算運行,遠大于單機的運行效率。
2)性價比優勢
利用通用廉價的服務器代替小型機,例如:阿里轟轟烈烈的去IOE(去掉IBM的小型機、Oracle數據庫、EMC存儲設備,代之以自己在開源軟件基礎上開發的系統)
3)可伸縮性
馬上即將開始的阿里雙11,除了提前預估服務器外,在極端的情況下,可以實現動態的服務器擴容。
3.集群的分類
一般分為如下三類:
- 負載均衡集群(Load balancing clusters)簡稱LBC
- 高可用性集群(High-availability clusters)簡稱HAC
- 高性能計算集群(High-perfomance clusters)簡稱HPC
大家平時接觸最多的就是負載均衡集群,常用的有 Nginx 把請求分發給后端的不同web服務器,還有就是數據庫集群,負載均衡就是,為了保證服務器的高可用,高并發。
負載均衡
在服務器集群中,需要有一臺服務器充當調度者的角色,用戶的所有請求都會首先由它接收,調度者再根據每臺服務器的負載情況將請求分配給某一臺后端服務器去處理。那么在這個過程中,調度者如何合理分配任務,保證所有后端服務器都將性能充分發揮,從而保持服務器集群的整體性能最優,這就是負載均衡。
負載均衡更加詳細的內容可以查看:
阿里P8架構師談:負載均衡的原理、分類、實現架構,以及使用場景
分布式
分布式是指將不同的業務分布在不同的地方,而集群指的是將幾臺服務器集中在一起,實現同一業務。分布式中的每一個節點,都可以做集群,而集群并不一定就是分布式的。
分布式一致性
分布式系統中,解決了負載均衡的問題后,另外一個問題就是數據的一致性了。
在分布式集群中,很難保障數據的一致性。在以往的單節點服務中,通常使用鎖來實現,當發生并發沖突時 通過對鎖的持有獲得對象的操作權,從而保證數據在同一時刻只允許被一個請求操作。但是在集群中,若同樣采用鎖的機制,那么需要一臺節點用來管理分配鎖,當其他節點進行請求前,首先去獲取鎖從而獲得執行權。但是這樣會產生單節點問題,即若管理鎖的節點down掉,那么整個集群將無法工作。同時,由于鎖的機制會使整個集群變成串行化單節點的形式,失去了集群的意義。
所以,在集群中需要一種高容錯的分布式一致性算法,因此提出了Paxos算法。
Paxos是一種基于消息傳遞且具有高度容錯性的一致性算法,在分布式當中應用的十分廣泛。
更多分布式數據一致性內容可以查看:阿里P8架構師談:分布式數據庫數據一致性的原理、與技術實現方案
你可能也喜歡:
總結
以上是生活随笔為你收集整理的阿里P8架构师谈:分布式、集群、负载均衡、分布式数据一致性的区别与关联的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文浅尝 | Knowledge Vau
- 下一篇: 论文浅尝 | 面向 cQA 的跨语言问题