中文字幕无码久久精品,13—14同岁无码A片,99热门精品一区二区三区无码,菠萝菠萝蜜在线观看视频高清1

您當(dāng)前的位置是:  首頁(yè) > 資訊 > 文章精選 >
 首頁(yè) > 資訊 > 文章精選 >

分布式系統(tǒng)架構(gòu)與云原生—阿里云《云原生架構(gòu)白皮書(shū)》導(dǎo)讀

2020-08-05 10:48:11   作者:朱祺 國(guó)際電氣電子工程師協(xié)會(huì)IEEE高級(jí)會(huì)員、阿里云全球MVP   來(lái)源:CTI論壇   評(píng)論:0  點(diǎn)擊:


  1 云原生與分布式系統(tǒng)架構(gòu)的關(guān)系
  1.1 云原生架構(gòu)的定義
  《云原生架構(gòu)白皮書(shū)》中對(duì)于云原生架構(gòu)的定義為“基于云原生技術(shù)的一組架構(gòu)原則和設(shè)計(jì)模式的集合,旨在將云應(yīng)用中的非業(yè)務(wù)代碼部分進(jìn)行最大化的剝離,從而讓云設(shè)施接管應(yīng)用中原有的大量非功能特性(如彈性、韌性、安全、可觀測(cè)性、灰度等),使業(yè)務(wù)不再有非功能性業(yè)務(wù)中斷困擾的同時(shí),具備輕量、敏捷、高度自動(dòng)化的特點(diǎn)。”
  1.2 分布式系統(tǒng)架構(gòu)的定義
  此處定義參考百度百科為“在一個(gè)分布式系統(tǒng)中,一組獨(dú)立的計(jì)算機(jī)展現(xiàn)給用戶(hù)的是一個(gè)統(tǒng)一的整體,就好像是一個(gè)系統(tǒng)似的。系統(tǒng)擁有多種通用的物理和邏輯資源,可以動(dòng)態(tài)的分配任務(wù),分散的物理和邏輯資源通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)信息交換。系統(tǒng)中存在一個(gè)以全局的方式管理計(jì)算機(jī)資源的分布式操作系統(tǒng)。通常,對(duì)用戶(hù)來(lái)說(shuō),分布式系統(tǒng)只有一個(gè)模型或范型。在操作系統(tǒng)之上有一層軟件中間件負(fù)責(zé)實(shí)現(xiàn)這個(gè)模型。”
  1.3 云原生與分布式系統(tǒng)架構(gòu)的關(guān)系
  分布式架構(gòu)的重點(diǎn)在于解決計(jì)算力的保障問(wèn)題以及為了提高計(jì)算力并同時(shí)確保系統(tǒng)的可靠性、可用性和安全性而產(chǎn)生的諸如彈性伸縮、負(fù)載均衡、分布式存儲(chǔ)等問(wèn)題,其目標(biāo)是在于構(gòu)建一個(gè)分布式的安全可靠的計(jì)算力基礎(chǔ)平臺(tái)。通常來(lái)說(shuō),對(duì)于信息系統(tǒng)的架構(gòu)方式的進(jìn)化和改變即是伴隨著接入數(shù)據(jù)和所提供的業(yè)務(wù)由少變多的過(guò)程,目前為止信息系統(tǒng)的架構(gòu)經(jīng)歷了單機(jī)架構(gòu)、集群架構(gòu)、分布式架構(gòu)、分布式多活數(shù)據(jù)中心架構(gòu)幾個(gè)階段,同時(shí)伴隨著業(yè)務(wù)系統(tǒng)架構(gòu)一同演變的還有各種外圍系統(tǒng)和存儲(chǔ)系統(tǒng),比如關(guān)系數(shù)據(jù)庫(kù)的分庫(kù)分表改造、從本地緩存過(guò)渡到分布式緩存等。
  要理清分布式架構(gòu)和云原生的關(guān)系,先來(lái)歸納一下分布式架構(gòu)與云之間的關(guān)系,云一般指的是一個(gè)提供資源的平臺(tái),云計(jì)算的本質(zhì)是按需分配資源和彈性計(jì)算,而針對(duì)目前數(shù)據(jù)井噴并隨著物聯(lián)網(wǎng)應(yīng)用的推進(jìn)仍然接入量在呈指數(shù)上升的現(xiàn)狀下,分布式架構(gòu)是最能夠滿(mǎn)足構(gòu)建一個(gè)合格的云平臺(tái)所應(yīng)具有特質(zhì)的架構(gòu)方式。云原生應(yīng)用即專(zhuān)門(mén)為在云平臺(tái)部署和運(yùn)行而設(shè)計(jì)的應(yīng)用,采用云原生的設(shè)計(jì)模式可以?xún)?yōu)化和改進(jìn)傳統(tǒng)應(yīng)用模式,使應(yīng)用更加適合在云平臺(tái)上運(yùn)行,因此云原生發(fā)展的本質(zhì)需求來(lái)自于SAAS層面設(shè)計(jì)理念的改進(jìn),由于SAAS層的設(shè)計(jì)理念的改進(jìn)而進(jìn)一步從北向往南向推動(dòng)了PAAS層特別是中間件的升級(jí)從而確保整個(gè)云平臺(tái)的架構(gòu)能夠更好的服務(wù)于云原生架構(gòu)的改變。
  因此,云原生和分布式架構(gòu)的升級(jí)和迭代是一個(gè)滾動(dòng)的過(guò)程,為了更好的發(fā)揮云平臺(tái)的特點(diǎn)而有了云原生的需求和設(shè)計(jì)模式改變,而在這個(gè)過(guò)程中云原生也反過(guò)來(lái)促進(jìn)了下層架構(gòu)的升級(jí)。這個(gè)迭代的過(guò)程充分的反應(yīng)了互聯(lián)網(wǎng)或者說(shuō)數(shù)據(jù)時(shí)代開(kāi)發(fā)理念的特征,即滾動(dòng)而非單向。
  1.3 《云原生架構(gòu)白皮書(shū)》章節(jié)導(dǎo)讀
  通過(guò)《云原生架構(gòu)白皮書(shū)》的第1章和第2章內(nèi)容可以充分的理解云原生的本質(zhì)和云原生架構(gòu)的特點(diǎn),在閱讀這兩章的內(nèi)容時(shí)推薦參考分布式架構(gòu)的相關(guān)書(shū)籍,因?yàn)樵圃头植际郊軜?gòu)密切相關(guān),但是升級(jí)迭代的著力點(diǎn)又有所區(qū)別,所以能夠結(jié)合在一起進(jìn)行閱讀是最好的。
  2 云原生主要架構(gòu)原則和技術(shù)分析
  2.1 微服務(wù)和小系統(tǒng)服務(wù)
  微服務(wù)架構(gòu),從宏觀上來(lái)看,無(wú)非就是細(xì)化了服務(wù)拆分過(guò)程中的粒度,粒度越細(xì),業(yè)務(wù)耦合越小,容錯(cuò)性就越好,并且后期擴(kuò)展也會(huì)越容易。但是顆粒度過(guò)細(xì),又會(huì)帶來(lái)另外一些麻煩比如提升了維護(hù)成本、影響排查問(wèn)題時(shí)的效率、業(yè)務(wù)開(kāi)發(fā)人員很難梳理清楚服務(wù)之間的依賴(lài)關(guān)系等。
  因此《云原生架構(gòu)白皮書(shū)》在微服務(wù)相關(guān)章節(jié)中又提到了小系統(tǒng)服務(wù)的概念,即是一個(gè)顆粒度的中間狀態(tài),其實(shí)核心就是一個(gè)服務(wù)拆分顆粒度的問(wèn)題,白皮書(shū)中的第3章中有專(zhuān)門(mén)章節(jié)對(duì)于云原生微服務(wù)特別是微服務(wù)設(shè)計(jì)過(guò)程中的約束做了詳細(xì)介紹,根本目的就是使微服務(wù)的發(fā)展處于一個(gè)受約束的狀態(tài),而不是因?yàn)橛辛宋⒎⻊?wù)的理念就是服務(wù)拆分的顆粒度越細(xì)越好。
  2.2 容器技術(shù)與云原生的關(guān)系
  從白皮書(shū)中提供的對(duì)比圖可以清楚的發(fā)現(xiàn),云原生在代碼方面,對(duì)于代碼通常所包含的三部分:業(yè)務(wù)代碼、三方軟件和處理非功能特性的代碼進(jìn)行剝離,最終想實(shí)現(xiàn)的理想狀態(tài)是把所有非功能性代碼(即除業(yè)務(wù)代碼部分)從SAAS層剝離到PAAS層和IAAS層中去,當(dāng)然目前還是沒(méi)有完全做到。剝離非功能代碼仍然是一個(gè)設(shè)計(jì)模式理念的變化,而在這個(gè)理念的落地過(guò)程中容器技術(shù)成為了最好的工具。
  在白皮書(shū)中這張對(duì)比圖的基礎(chǔ)上,根據(jù)其他一些公開(kāi)資料能夠更清晰的反映出容器技術(shù)應(yīng)用之后,云原生架構(gòu)所產(chǎn)生的變化。
  單機(jī)架構(gòu)
  注:以上圖片來(lái)源于《超大流量分布式系統(tǒng)架構(gòu)解決方案:人人都是架構(gòu)師2.0》高翔龍著 電子工業(yè)出版社
 
  集群架構(gòu)
  注:以上圖片來(lái)源于《超大流量分布式系統(tǒng)架構(gòu)解決方案:人人都是架構(gòu)師2.0》高翔龍著 電子工業(yè)出版社
  服務(wù)化架構(gòu)
  注:以上圖片來(lái)源于《超大流量分布式系統(tǒng)架構(gòu)解決方案:人人都是架構(gòu)師2.0》高翔龍著 電子工業(yè)出版社
  在這種架構(gòu)方式下以被廣泛應(yīng)用的Kubernetes為例,K8S中的大部分概念如Node(除了集群控制節(jié)點(diǎn)Master外K8S集群中的其他機(jī)器)、Pod(容器)等可以被看作資源對(duì)象,幾乎所有資源對(duì)象都可以通過(guò)K8S提供的kubectl工具執(zhí)行增、刪、改、查等操作并將其保存在etcd中持久化存儲(chǔ),也就是說(shuō)容器服務(wù)包括DOCKER、K8S等的全新設(shè)計(jì)模式天生就適合于分布式服務(wù)架構(gòu)。當(dāng)然相比集群架構(gòu)來(lái)說(shuō),在開(kāi)發(fā)運(yùn)維自動(dòng)化水平的要求上也自然較高以確保對(duì)于容器能夠進(jìn)行有序而全局化的管理防止系統(tǒng)出現(xiàn)不可控制的狀態(tài)。
  2.2 《云原生架構(gòu)白皮書(shū)》章節(jié)導(dǎo)讀
  白皮書(shū)的第3章和第4章主要介紹的就是主要的云原生技術(shù)和阿里云原生架構(gòu)設(shè)計(jì)的內(nèi)容,其實(shí)核心的技術(shù)就是容器技術(shù),在這個(gè)基礎(chǔ)上包括微服務(wù)的理念、Serverless和Service Mesh等才能夠被順利的付諸于實(shí)踐,而在容器技術(shù)中自動(dòng)化水平又是一個(gè)重中之重,所以白皮書(shū)中數(shù)次提到的所有過(guò)程自動(dòng)化原則就是能否發(fā)揮云原生技術(shù)優(yōu)勢(shì)的核心因素。
  3 小結(jié):云原生的未來(lái)發(fā)展方向
  云原生畢竟是一個(gè)很大的概念,理論上所有從設(shè)計(jì)和開(kāi)發(fā)之始就以部署在云上的設(shè)計(jì)理念都能夠稱(chēng)為云原生,而微服務(wù)則是云原生在服務(wù)維度典型的表現(xiàn)形式,而容器服務(wù)即是能夠?qū)⑽⒎⻊?wù)成功落地的核心技術(shù)。Serverless是一個(gè)技術(shù)也可以從字面意思理解為未來(lái)的發(fā)展方向,核心理念仍然是將非業(yè)務(wù)部分的功能下沉至基礎(chǔ)設(shè)施,從這點(diǎn)上來(lái)說(shuō),理想中的Serverless甚至不必包含目前K8S中的集群容量規(guī)劃、安全維護(hù)和故障診斷等功能,將這些集中考慮為云基礎(chǔ)設(shè)施所應(yīng)該具有的功能,而功能模塊只需考慮自身的業(yè)務(wù),充分體現(xiàn)出的是輕量,通過(guò)事件驅(qū)動(dòng)將輕量的服務(wù)和服務(wù)間以及輕量服務(wù)和云平臺(tái)之間連接起來(lái),整個(gè)體系相比集群化部署來(lái)說(shuō),與其說(shuō)是一個(gè)系統(tǒng),不如說(shuō)是云基礎(chǔ)設(shè)施基礎(chǔ)上各類(lèi)微服務(wù)形成的生態(tài)。
【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與CTI論壇無(wú)關(guān)。CTI論壇對(duì)文中陳述、觀點(diǎn)判斷保持中立,不對(duì)所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請(qǐng)讀者僅作參考,并請(qǐng)自行承擔(dān)全部責(zé)任。

評(píng)論排行

專(zhuān)題

CTI論壇會(huì)員企業(yè)