




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 互聯(lián)網(wǎng)分層架構(gòu)分析21CTO 微信號(hào) we21cto功能介紹 21CTO(21)是一個(gè)高質(zhì)量、個(gè)性化的學(xué)習(xí)與服務(wù)平臺(tái)。提供教育培訓(xùn)、學(xué)習(xí)分享、人脈資源等產(chǎn)品,匯聚國(guó)內(nèi)外IT互聯(lián)網(wǎng)最優(yōu)秀的CTO&技術(shù)專(zhuān)家,連接人與知識(shí)的價(jià)值服務(wù)。上圖是一個(gè)典型的互聯(lián)網(wǎng)分層架構(gòu):客戶(hù)端層:典型調(diào)用方是browser或者APP站點(diǎn)應(yīng)用層:實(shí)現(xiàn)核心業(yè)務(wù)邏輯,從下游獲取數(shù)據(jù),對(duì)上游返回html或者json數(shù)據(jù)-緩存層:加速訪問(wèn)存儲(chǔ)數(shù)據(jù)-數(shù)據(jù)庫(kù)層:固化數(shù)據(jù)存儲(chǔ)如果實(shí)施了服務(wù)化,這個(gè)分層架構(gòu)圖可能是這樣:中間多了一個(gè)服務(wù)層。同一個(gè)層次的內(nèi)部,例如端上的APP,以及web-server,也都有進(jìn)行MVC分層:view層:展
2、現(xiàn)control層:邏輯model層:數(shù)據(jù)可以看到,每個(gè)工程師骨子里,都潛移默化的實(shí)施著分層架構(gòu)。那么,互聯(lián)網(wǎng)分層架構(gòu)的本質(zhì)究竟是什么呢?如果我們仔細(xì)思考會(huì)發(fā)現(xiàn),不管是跨進(jìn)程的分層架構(gòu),還是進(jìn)程內(nèi)的MVC分層,都是一個(gè)“數(shù)據(jù)移動(dòng)”,然后“被處理”和“被呈現(xiàn)”的過(guò)程,歸根結(jié)底一句話(huà):互聯(lián)網(wǎng)分層架構(gòu),是一個(gè)數(shù)據(jù)移動(dòng),處理,呈現(xiàn)的過(guò)程,其中數(shù)據(jù)移動(dòng)是整個(gè)過(guò)程的核心。如上圖所示:數(shù)據(jù)處理和呈現(xiàn)要CPU計(jì)算,CPU是固定不動(dòng)的:db/service/web-server都部署在固定的集群上端上,不管是browser還是APP,也有固定的CPU處理數(shù)據(jù)是移動(dòng)的:跨進(jìn)程移動(dòng):數(shù)據(jù)從數(shù)據(jù)庫(kù)和緩存里,轉(zhuǎn)移到se
3、rvice層,到web-server層,到client層同進(jìn)程移動(dòng):數(shù)據(jù)從model層,轉(zhuǎn)移到control層,轉(zhuǎn)移到view層數(shù)據(jù)要移動(dòng),所以有兩個(gè)東西很重要:數(shù)據(jù)傳輸?shù)母袷綌?shù)據(jù)在各層次的形態(tài)先看數(shù)據(jù)傳輸?shù)母袷剑磪f(xié)議很重要:service與db/cache之間,二進(jìn)制協(xié)議/文本協(xié)議是數(shù)據(jù)傳輸?shù)妮d體web-server與service之間,RPC的二進(jìn)制協(xié)議是數(shù)據(jù)傳輸?shù)妮d體client和web-server之間,http協(xié)議是數(shù)據(jù)傳輸?shù)妮d體再看數(shù)據(jù)在各層次的形態(tài),以用戶(hù)數(shù)據(jù)為例:db層,數(shù)據(jù)是以“行”為單位存在的row(uid, name, age)cache層,數(shù)據(jù)是以kv的形式存在的kv
4、(uid - User)service層,會(huì)把row或者kv轉(zhuǎn)化為對(duì)程序友好的User對(duì)象web-server層,會(huì)把對(duì)程序友好的User對(duì)象轉(zhuǎn)化為對(duì)http友好的json對(duì)象client層:最終端上拿到的是json對(duì)象結(jié)論:互聯(lián)網(wǎng)分層架構(gòu)的本質(zhì),是數(shù)據(jù)的移動(dòng)。為什么要說(shuō)這個(gè),這將會(huì)引出“分層架構(gòu)演進(jìn)”的核心原則與方法:讓上游更高效的獲取與處理數(shù)據(jù),復(fù)用讓下游能屏蔽數(shù)據(jù)的獲取細(xì)節(jié),封裝弄清楚這個(gè)原則與方法,再加上一些經(jīng)驗(yàn)積累,就能回答網(wǎng)友經(jīng)常在評(píng)論中提出的這些問(wèn)題了:是否需要引入DAO層,什么時(shí)機(jī)引入是否需要服務(wù)化,什么時(shí)機(jī)服務(wù)化是否需要抽取通用中臺(tái)業(yè)務(wù),什么時(shí)機(jī)抽取是否需要前后端分離,什么時(shí)機(jī)分離(網(wǎng)友們的這些提問(wèn),其實(shí)很難回答。在不了解業(yè)務(wù)發(fā)展階段,業(yè)務(wù)規(guī)模,數(shù)據(jù)量并發(fā)量的情況下,妄下YES或NO的結(jié)論,本身就是不負(fù)責(zé)任的。)更具體的分層架構(gòu)演進(jìn)細(xì)節(jié),下一篇和大家細(xì)究??偨Y(jié)互聯(lián)網(wǎng)分層架構(gòu)的本質(zhì),是數(shù)據(jù)的移動(dòng)互聯(lián)網(wǎng)分層架構(gòu)中,數(shù)據(jù)的傳輸格式(協(xié)議)與數(shù)據(jù)在各層次的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 泉州輕工職業(yè)學(xué)院《流體力學(xué)基礎(chǔ)與液壓和氣動(dòng)技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 主播勞務(wù)合同-文書(shū)模板
- 許昌學(xué)院《奧爾夫教學(xué)法》2023-2024學(xué)年第二學(xué)期期末試卷
- 北京信息科技大學(xué)《動(dòng)物育種學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 炎黃職業(yè)技術(shù)學(xué)院《英語(yǔ)語(yǔ)篇研讀與教學(xué)設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 麗江職業(yè)技術(shù)學(xué)院《Scratch與創(chuàng)意設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶醫(yī)科大學(xué)《信號(hào)與系統(tǒng)分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 2024年質(zhì)檢員年終工作總結(jié)2
- 2025三年級(jí)部編人教版語(yǔ)文下學(xué)期期末復(fù)習(xí)考點(diǎn)知識(shí)練習(xí)
- 2025小學(xué)三年級(jí)冀教版數(shù)學(xué)下學(xué)期期中綜合復(fù)習(xí)題
- 2025廣東珠海高新區(qū)科技產(chǎn)業(yè)局招聘專(zhuān)員1人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 數(shù)學(xué)-福建省泉州市2024-2025學(xué)年高三上學(xué)期質(zhì)量監(jiān)測(cè)(二)試卷和答案(泉州二模)
- 員工行為守則及職業(yè)道德規(guī)范
- 3學(xué)會(huì)反思 第一課時(shí) (說(shuō)課稿) -2023-2024學(xué)年道德與法治六年級(jí)下冊(cè)統(tǒng)編版
- 2024年國(guó)土個(gè)人工作總結(jié)樣本(3篇)
- 無(wú)人機(jī)法律法規(guī)與安全飛行 第2版民用航空人員管理
- 2025陜西省建筑安全員B證考試題庫(kù)及答案
- (完整版)python學(xué)習(xí)課件
- DB31-T 451-2021 凈水廠用煤質(zhì)顆?;钚蕴窟x擇、使用及更換技術(shù)規(guī)范
- 做賬實(shí)操-光伏發(fā)電能源儲(chǔ)存企業(yè)賬務(wù)處理示例
- 2025年部門(mén)預(yù)算支出經(jīng)濟(jì)分類(lèi)科目說(shuō)明表
評(píng)論
0/150
提交評(píng)論