
文章插圖
什么是分布式架構(gòu)分布式系統(tǒng)(distributed system) 是建立在網(wǎng)絡(luò)之上的軟件系統(tǒng) 。
內(nèi)聚性:是指每一個(gè)數(shù)據(jù)庫(kù)分布節(jié)點(diǎn)高度自治,有本地的數(shù)據(jù)庫(kù)管理系統(tǒng) 。
透明性:是指每一個(gè)數(shù)據(jù)庫(kù)分布節(jié)點(diǎn)對(duì)用戶的應(yīng)用來(lái)說(shuō)都是透明的,看不出是本地還是遠(yuǎn)程 。
在分布式數(shù)據(jù)系統(tǒng)中,用戶感覺(jué)不數(shù)據(jù)是分布的,即用戶不須知道關(guān)系是否分割,有無(wú)副本,數(shù)據(jù)存在于那個(gè)站點(diǎn)以及事物在哪個(gè)站點(diǎn)上執(zhí)行 。
簡(jiǎn)單來(lái)說(shuō),在一個(gè)分布式系統(tǒng)中,一組獨(dú)立的計(jì)算機(jī)展現(xiàn)給用戶的是一個(gè)統(tǒng)一的整體,就好像是一個(gè)系統(tǒng)似的 。
分布式系統(tǒng)作為一個(gè)整體對(duì)用戶提供服務(wù),而整個(gè)系統(tǒng)的內(nèi)部的協(xié)作對(duì)用戶來(lái)說(shuō)是透明的,用戶就像是指使用一個(gè)Mysql一樣,如:分布式Mysql中間件Mycat ,來(lái)處理大并發(fā)大數(shù)據(jù)量的構(gòu)架 。
分布式架構(gòu)的應(yīng)用1.分布式文件系統(tǒng)
例如:出名的有 Hadoop 的 HDFS, 還有 google的 GFS , 淘寶的 TFS 等
2.分布式緩存系統(tǒng)
例如:memcache , hbase, mongdb 等
3.分布式數(shù)據(jù)庫(kù)
例如:mysql, mariadb, postgreSql 等
4.分布式webService
5.分布式計(jì)算
舉例
以分布式MySQL數(shù)據(jù)庫(kù)中間件mycat 為例 。MySQL在現(xiàn)在電商以及互聯(lián)網(wǎng)公司的應(yīng)用非常多,一個(gè)是因?yàn)樗拿赓M(fèi)開(kāi)源,另外一個(gè)原因是因?yàn)榉植际较到y(tǒng)的水平可擴(kuò)展性,隨著移動(dòng)互聯(lián)網(wǎng)用戶的暴增,互聯(lián)網(wǎng)公司,像淘寶,天貓,唯品會(huì)等 。電商都采用分布式系統(tǒng)應(yīng)對(duì)用戶的高并發(fā)量以及大數(shù)據(jù)量的存儲(chǔ) 。而在Mycat的商業(yè)案例中,有對(duì)中國(guó)移動(dòng)的賬單結(jié)算項(xiàng)目中,應(yīng)用實(shí)時(shí)處理高峰期每天2億的數(shù)據(jù)量,在對(duì)物聯(lián)網(wǎng)的項(xiàng)目中,實(shí)現(xiàn)處理高達(dá)26億的數(shù)據(jù)量,并提供實(shí)時(shí)查詢的接口 。通過(guò)對(duì)MyCat的學(xué)習(xí),加深分布式系統(tǒng)架構(gòu)的理解,以及分布式相關(guān)的技術(shù),分布式一致性ZooKeeper服務(wù), 高可用HAProxy/keepalived等相關(guān)應(yīng)用 。
集群與分布式負(fù)載均衡分布式相關(guān)的高可用、容災(zāi)等名詞解釋Mycat中間件學(xué)習(xí)分布式架構(gòu)的演進(jìn)1.初始階段架構(gòu)
特征:應(yīng)用程序,數(shù)據(jù)庫(kù),文件等所有資源都放在一臺(tái)服務(wù)器上 。
2.應(yīng)用服務(wù)和數(shù)據(jù)服務(wù)以及文件服務(wù)分離
說(shuō)明:好景不長(zhǎng),發(fā)現(xiàn)隨著系統(tǒng)訪問(wèn)量的再度增加,webserver機(jī)器的壓力在高峰期會(huì)上升到比較高,這個(gè)時(shí)候開(kāi)始考慮增加一臺(tái)webserver 。
特征:應(yīng)用程序、數(shù)據(jù)庫(kù)、文件分別部署在獨(dú)立的資源上 。
3.使用緩存改善性能
說(shuō)明:系統(tǒng)訪問(wèn)特點(diǎn)遵循二八定律,即80%的業(yè)務(wù)訪問(wèn)集中在20%的數(shù)據(jù)上 。緩存分為本地緩存和遠(yuǎn)程分布式緩存,本地緩存訪問(wèn)速度更快但緩存數(shù)據(jù)量有限,同時(shí)存在與應(yīng)用程序爭(zhēng)用內(nèi)存的情況 。
特征:數(shù)據(jù)庫(kù)中訪問(wèn)較集中的一小部分?jǐn)?shù)據(jù)存儲(chǔ)在緩存服務(wù)器中,減少數(shù)據(jù)庫(kù)的訪問(wèn)次數(shù),降低數(shù)據(jù)庫(kù)的訪問(wèn)壓力 。
4.使用應(yīng)用服務(wù)器集群
說(shuō)明:在做完分庫(kù)分表這些工作后,數(shù)據(jù)庫(kù)上的壓力已經(jīng)降到比較低了,又開(kāi)始過(guò)著每天看著訪問(wèn)量暴增的幸福生活了 。突然有一天,發(fā)現(xiàn)系統(tǒng)的訪問(wèn)又開(kāi)始有變慢的趨勢(shì)了,這個(gè)時(shí)候首先查看數(shù)據(jù)庫(kù),壓力一切正常,之后查看webserver,發(fā)現(xiàn)apache阻塞了很多的請(qǐng)求,而應(yīng)用服務(wù)器對(duì)每個(gè)請(qǐng)求也是比較快的,看來(lái)是請(qǐng)求數(shù)太高導(dǎo)致需要排隊(duì)等待,響應(yīng)速度變慢 。
特征:多臺(tái)服務(wù)器通過(guò)負(fù)載均衡同時(shí)向外部提供服務(wù),解決單臺(tái)服務(wù)器處理能力和存儲(chǔ)空間上限的問(wèn)題 。
描述:使用集群是系統(tǒng)解決高并發(fā)、海量數(shù)據(jù)問(wèn)題的常用手段 。通過(guò)向集群中追加資源,提升系統(tǒng)的并發(fā)處理能力,使得服務(wù)器的負(fù)載壓力不再成為整個(gè)系統(tǒng)的瓶頸 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問(wèn)題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!
「愛(ài)刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助:- 解析虛擬機(jī)如何重裝系統(tǒng) 虛擬機(jī)重裝系統(tǒng)的步驟
- 怎么發(fā)傳真步驟圖解 如何使用傳真機(jī)
- 共享充電寶不是一個(gè)系統(tǒng)能還嗎
- 無(wú)線耳機(jī)工作原理圖解 如何使用藍(lán)牙耳機(jī)
- 圖解ubuntu服務(wù)器如何搭建 ubuntu服務(wù)器搭建教程
- 江蘇高考志愿填報(bào)圖解 江蘇志愿填報(bào)系統(tǒng)
- 通道閘系統(tǒng)分類
- 能讓手機(jī)流暢到爆的設(shè)置方法 電腦系統(tǒng)清理垃圾
- 速覽數(shù)據(jù)庫(kù)加密技巧 數(shù)據(jù)庫(kù)加密系統(tǒng)有哪些特殊要求
- 附虛擬機(jī)安裝操作教程 虛擬機(jī)安裝操作系統(tǒng)的主要步驟有哪些
