




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 分布式IT架構(gòu)演進(jìn)一、分布式架構(gòu)的發(fā)展歷史1946年,世界上第一臺電子計(jì)算機(jī)在美國的賓夕法尼亞大學(xué)誕生,它的名字是:ENICAC ,這臺計(jì)算機(jī)的體重比較大,計(jì)算速度也不快,但是而代表了計(jì)算機(jī)時代的到來,再以后的互聯(lián)網(wǎng)的發(fā)展中也有基礎(chǔ)性的意義。計(jì)算機(jī)的組成是有五部分完成的,分別是:輸入設(shè)備,輸出設(shè)備,存儲器,存儲器里面由運(yùn)算器和控制器,有一個馮諾依曼的模型非常形象的對象計(jì)算機(jī)的組成進(jìn)行了描述,不過計(jì)算機(jī)也是有數(shù)據(jù)流,指令流,控制流來進(jìn)行計(jì)算的和正常運(yùn)轉(zhuǎn)的。如圖: ENIAC之后,電子計(jì)算機(jī)進(jìn)入到了IBM主導(dǎo)的大型機(jī)的時代, 在1946年第一臺IBM大型機(jī)SYSTEM/360誕生,這使得IBM在
2、20世紀(jì)5060年代統(tǒng)治了整個大型計(jì)算機(jī)的工業(yè),在大型主機(jī)時代,計(jì)算機(jī)架構(gòu)向兩個方向發(fā)展CISC(微處理器執(zhí)行的計(jì)算機(jī)語言指令集)CPU為架構(gòu)的價格便宜的個人PC和RISC(精簡指令集計(jì)算機(jī))價格高的小型UNIX服務(wù)器。大型主機(jī)的出現(xiàn),憑借著計(jì)算能力和處理能力,高的穩(wěn)定性和安全性,在很長的一段時間內(nèi)引領(lǐng)到計(jì)算領(lǐng)域的發(fā)展。但是集中式的計(jì)算機(jī)系統(tǒng)來帶來了一些問題,來越來越不能滿足用戶的需求比如說: 1. 大型的主機(jī)非常貴,一般的小企業(yè)用不起。 2. 大型主機(jī)比較復(fù)雜,培養(yǎng)人才的成本比較高。 3. 單點(diǎn)問題,如過大型機(jī)出現(xiàn)故障,整個系統(tǒng)都掛了運(yùn)行不了,使企業(yè)的損失非常大。 4. 隨著技術(shù)的進(jìn)步,個人
3、PC電腦的性能越來越高,成本也越來越低。阿里巴巴在2009年發(fā)起了一項(xiàng)去“IOE”的驅(qū)動IOE指的是IBM的小型機(jī),Oracle的數(shù)據(jù)庫和EMC的高端存儲設(shè)備,2009年的去IOE的運(yùn)動,一直到2003的支付寶的最后一臺IBM的小型機(jī)的下線。為什么要去IOE阿里巴巴過去數(shù)據(jù)庫使用的是Oracle,并使用小型機(jī)和高端存儲設(shè)備提供高性能的數(shù)據(jù)處理和存儲服務(wù)。隨著公司的業(yè)務(wù)量的上升,用戶規(guī)模的不斷上漲,傳統(tǒng)的集中式的架構(gòu)Oracle數(shù)據(jù)庫在擴(kuò)展方面遭遇了瓶頸。向傳統(tǒng)的Oracle,DB2都是以集中式的為主,存在的缺點(diǎn)就是擴(kuò)展性的不足,集中式的擴(kuò)展主要是采用的是向上的擴(kuò)展不是水平的擴(kuò)展,這樣時間長了,
4、早晚都會遇到系統(tǒng)瓶頸。二、分布式架構(gòu)的常見概念集群小飯店原來是一個廚師,切菜洗菜備料炒菜全干。后來客人多了,廚房一個廚師忙不過來,又請了個廚師,兩個廚師都能炒一樣的菜,這兩個廚師的關(guān)系就是集群。分布式為了讓廚師專心炒菜,把菜做到極致,又請了個配菜師負(fù)責(zé)切菜,備菜,備料,廚師和配菜師的關(guān)系就是分布式的,一個配菜師也忙不過來,有請了個配菜師,這兩個配菜師的關(guān)系就是集群了。所以說有分布式的架構(gòu)中可能有集群,但集群不等于有分布式。 節(jié)點(diǎn)節(jié)點(diǎn)是指一個可以獨(dú)立按照分布式協(xié)議完成一組邏輯的程序個體。在具體的項(xiàng)目中,一個節(jié)點(diǎn)表示的是一個操作系統(tǒng)上的進(jìn)程。副本機(jī)制副本指的是在分布式系統(tǒng)中為數(shù)據(jù)或服務(wù)提供冗余。數(shù)
5、據(jù)副本指在不同的節(jié)點(diǎn)上持久化同一份數(shù)據(jù),當(dāng)出現(xiàn)某一個節(jié)點(diǎn)的數(shù)據(jù)丟失時,可以從副本讀取數(shù)據(jù)。數(shù)據(jù)副本是分布式系統(tǒng)中結(jié)果數(shù)據(jù)丟失的唯一手段。服務(wù)副本表示的是多個節(jié)點(diǎn)提供相同的服務(wù),通過主從關(guān)系來實(shí)現(xiàn)服務(wù)的高可用方案。中間件中間件位與操作系統(tǒng)提供的服務(wù)之外,又不屬于應(yīng)用,它是位與應(yīng)用和系統(tǒng)層之間為開發(fā)者方便的處理通信,輸入和輸出的一類軟件,能夠讓用戶關(guān)心自己應(yīng)用的一部分。架構(gòu)的發(fā)展過程一個成熟的大型網(wǎng)站系統(tǒng)架構(gòu)并不是一開始就設(shè)計(jì)的非常完美的,也不是一開始就具備高性能,高可用,安全性等特性,而是隨著用戶量的增加,業(yè)務(wù)功能的擴(kuò)展慢慢完善演變過來的。在這個發(fā)展過程中,開發(fā)模式,技術(shù)架構(gòu)等都會發(fā)生非常大的變
6、化。假如系統(tǒng)具備一下功能:用戶模塊:用戶注冊和管理商品模塊:商品展示和管理交易模塊:創(chuàng)建交易及支付結(jié)算階段一:單應(yīng)用架構(gòu)系統(tǒng)的初級都是應(yīng)用和數(shù)據(jù)庫都放在一臺服務(wù)器上。 階段二:應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器分離隨著網(wǎng)站的用戶量增大,流量增大,對應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器單獨(dú)的部署機(jī)器,這樣可以增加系統(tǒng)的性能,提高訪問的效率,提高單機(jī)的負(fù)載能力和容災(zāi)的能力。階段三:應(yīng)用服務(wù)器集群-應(yīng)用服務(wù)器負(fù)載告警隨著訪問量和流量的增加,假設(shè)數(shù)據(jù)庫沒有遇到瓶頸,對應(yīng)用服務(wù)器集群來對請求進(jìn)行分流,提高程序的性能。存在的問題:用戶的請求由誰來轉(zhuǎn)發(fā),session如何來管理的問題。 階段四:數(shù)據(jù)庫壓力變大-數(shù)據(jù)庫讀寫分離讀寫
7、分離的話,這樣以后的請求,查詢的請求就可以去從庫里面讀數(shù)據(jù),寫的數(shù)據(jù)可以到主庫中了,但是會帶來幾個問題: 1. 主從的數(shù)據(jù)庫之間的數(shù)據(jù)同步:可以使用mysql自帶的master-slave方式實(shí)現(xiàn)主從復(fù)制 2. 對應(yīng)的數(shù)據(jù)源的選擇:采用第三方數(shù)據(jù)庫中間件,例如:mycat 階段五:使用搜索引擎緩解讀庫的壓力數(shù)據(jù)庫做讀庫的話,常常對模糊查詢的性能不是很好,特別是對于大型的互聯(lián)網(wǎng)公司來說,想搜索的模塊就比較核心了,這是可以使用搜索引擎了,雖然可以大幅度的提高查詢的速度,但是同時也會帶來一些問題比如索引的構(gòu)建。 階段六:引入緩存機(jī)制緩解數(shù)據(jù)庫的壓力對一些熱點(diǎn)的數(shù)據(jù),可以使用redis,memcache來作為應(yīng)用層的緩存;另外在某些場景下,可以使用mongodb來替代關(guān)系型數(shù)據(jù)庫來存儲。階段七:數(shù)據(jù)庫的水平/垂直拆分垂直拆分:把數(shù)據(jù)庫中不同的業(yè)務(wù)數(shù)據(jù)拆分到不同的數(shù)據(jù)庫中。水平拆分:把同一個表中的數(shù)據(jù)拆分到兩個甚至更多的數(shù)據(jù)庫中,水平拆分的原因是某些業(yè)務(wù)量數(shù)據(jù)量大的已經(jīng)達(dá)到了單個數(shù)據(jù)庫的瓶頸,這時候可以采取將表拆分到多個數(shù)據(jù)庫中。 階段八:應(yīng)用的拆分隨著業(yè)務(wù)的發(fā)展,業(yè)務(wù)越來越多,應(yīng)用的壓力越來越大。工程規(guī)模也越來越龐大。這個時候就可以考慮將應(yīng)用拆分,按照領(lǐng)域模型將我們的用戶,商品,交易分拆成子系統(tǒng)。 這樣拆分以后,可能會有一些相同的代碼,比如用戶操
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 剪紙課題立項(xiàng)申報(bào)書
- 事故車交易合同范本
- 上海嘉善房屋出租合同范本
- 高中課題申報(bào)書
- 課題申報(bào)書亮點(diǎn)
- 臨時用工勞務(wù)合同范本 三
- 勞務(wù)拆遷采購合同范本
- 合同范本 材料價差調(diào)整
- 勞務(wù)公司包工合同范本
- 與中介簽買房合同范本
- 中職統(tǒng)編《金屬材料與熱處理》系列課件 第3章 鐵碳合金(動畫) 云天系列課件
- 新蘇教版六年級科學(xué)下冊全冊知識點(diǎn)
- 人教版七年級下冊地理全冊復(fù)習(xí)知識點(diǎn)匯總課件
- 外墻瓷磚隱患排查施工方案
- QC成果勁鋼混凝土結(jié)構(gòu)鋼骨柱梁安裝質(zhì)量控制
- 國家公務(wù)員考試準(zhǔn)考證模板
- 緒論歷史地理學(xué)
- 中小學(xué)教師學(xué)生心理健康教育及案例
- 2024年四川省綿陽市中考物理試題 2024年綿陽中考分?jǐn)?shù)線
- 2023學(xué)年完整公開課版大足石刻
- 2023年《精子戰(zhàn)爭》作者羅賓·貝克
評論
0/150
提交評論