互聯(lián)網(wǎng)下半場不可不理解的云原生

2022-10-02    分類: 網(wǎng)站建設

在目前快節(jié)奏的移動互聯(lián)網(wǎng)時代,快速把握瞬息萬變的市場需求,以最短時間上線自己的應用以搶占市場,成為眾多企業(yè)在競爭白熱化的市場洪流中占有一席之地的制勝利器。天下武功唯快不破,顯然傳統(tǒng)的開發(fā)模式已經(jīng)無法適應這種快節(jié)奏的市場需求,在此背景下催生出敏捷、精益、DevOps等新概念的誕生,尤其以云原生為代表的下一代架構(gòu)更是進入火箭式發(fā)展階段,以容器、Kubernetes、Serverless等為代表的新技術(shù)引領移動互聯(lián)網(wǎng)進入急速賽道。

云原生不是某個單獨的技術(shù),而是技術(shù)與管理方法的合集。為便于讀者在了解實踐云原生架構(gòu)的方法之前能有一個系統(tǒng)性的思維,在此詳解云原生基礎架構(gòu)的代表技術(shù),及利用云原生構(gòu)建出來的云原生應用的特征。

互聯(lián)網(wǎng)下半場不可不理解的云原生

容器

正如我們現(xiàn)實世界中的集裝箱技術(shù)加速了貿(mào)易全球化的進程,容器技術(shù)的出現(xiàn)也解決了微服務架構(gòu)下大量應用部署的問題,容器的環(huán)境自包含特性,可以讓我們一次構(gòu)建,到處運行,其不僅解決了虛擬機所能夠解決的問題,同時也能夠解決由于資源要求過高虛擬機無法解決的問題。容器的特點主要包括:隔離應用依賴、創(chuàng)建應用鏡像并進行復制、創(chuàng)建容易分發(fā)的即啟即用的應用、支持實例簡單、快速地擴展等。

Docker 是當前流行的開源應用容器引擎,基于 Docker 容器化技術(shù),用戶可以將微服務及其所需的所有配置、依賴關系和環(huán)境變量打包成容器鏡像,并輕松移植到全新的安裝了 Docker 的服務器節(jié)點上,運維人員無須關心底層操作系統(tǒng),且無須重新配置環(huán)境,這使得容器成為部署單個微服務的最理想工具。

不可變的基礎設施

在傳統(tǒng)的物理服務器或虛擬機部署方式,因其每個都有自己的特征,我們稱之為寵物,當部署在宿主機上的應用出現(xiàn)故障,我們需要對癥下藥,排除問題恢復業(yè)務,但是在云原生架構(gòu)下,我們稱部署方式為牲畜,一旦應用部署完成之后,那么這套應用基礎設施就不會再修改了。如果需要更新,那么需要現(xiàn)更改公共鏡像來構(gòu)建新服務直接替換舊服務。而我們之所以能夠?qū)崿F(xiàn)直接替換,就是因為容器提供了自包含的環(huán)境(包含應用運行所需的所有依賴),所以對于應用而言,完全不需要關心容器發(fā)生了什么變化,只需要把容器鏡像本身修改即可。因此,對于云友好的基礎設施是隨時可以替換和更換的,這就是因為容器具有敏捷和一致性的能力,也就是云時代的應用基礎設施。

容器編排引擎相關工具有 Kubernetes 、Swarm 等,用以解決容器的管理和調(diào)度問題。目前,由 Google 開源的 Kubernetes基本算是統(tǒng)一了容器編排的市場,實現(xiàn)了容器集群的自動化部署、擴縮容和維護等功能。

Kubernetes 與 Docker 相互配合、相輔相成,其中 Docker 是作為 Kubernetes 內(nèi)部使用的低級別組件,而 Kubernetes 又可以高效管理調(diào)度 Docker 集群。

聲明式的API

聲明式不同于命令式,通過向工具描述自己想要讓事物達到的目標終態(tài),然后由這個工具自己內(nèi)部去計算和實現(xiàn)如何令這個事物達到目標狀態(tài)。簡言之,聲明式設計中,描述的是目標狀態(tài),其中就為我們極大的簡化了實現(xiàn)過程中的異常情況及調(diào)度過程,我們只需要關注結(jié)果,無論使用什么方式,結(jié)果總是朝著我們定義的方向逼近,聲明式設計也是一種設計理念,同時也是一種工作模式,它使得系統(tǒng)更加健壯。

微服務

微服務相較于單體應用,將架構(gòu)進行拆解,解決了單體應用后期難以擴展和低效的開發(fā)效率等問題。根據(jù)領域模型將巨大的單體分成界限清晰的微服務,并保持每個服務獨立可以迭代,具有服務高度自治、高效迭代、易于擴展和支持多語言編程等優(yōu)點。

在我們享受微服務的靈活、開發(fā)的敏捷帶來的利好時,對于眾多的微服務,在運維、監(jiān)控、部署、及分布式事務,服務之間的調(diào)用也提出了新的挑戰(zhàn)。

服務網(wǎng)格

微服務之間該如何實現(xiàn)調(diào)用,以及中間的調(diào)用策略該如何執(zhí)行,此刻就需要用到服務網(wǎng)格。目前服務網(wǎng)格架構(gòu)有侵入式和非侵入式兩種架構(gòu),區(qū)別在侵入式需要在開發(fā)框架中進行集成,需要使用SDK來實現(xiàn)一部分功能;非侵入式架構(gòu)在部署階段以sidecar模式與業(yè)務運行結(jié)合,通過接管網(wǎng)絡流量實現(xiàn)透明代理,從而實現(xiàn)一系列網(wǎng)絡策略及監(jiān)控,開發(fā)者僅需專注業(yè)務即可,無需對代碼進行修改,這種方式以服務網(wǎng)格(Service Mesh)為代表,讓應用更加輕量,目前最火的服務網(wǎng)格技術(shù)有Istio、Linkerd、Dubbo Mesh等,將其下沉到基礎設施層,用戶可以快速編排出復雜環(huán)境、復雜依賴關系的應用程序,同時開發(fā)者又無須過分關心應用程序的監(jiān)控、擴展性、服務發(fā)現(xiàn)和分布式追蹤這些煩瑣的事情,從而更專注于自身業(yè)務程序開發(fā)。

分享名稱:互聯(lián)網(wǎng)下半場不可不理解的云原生
文章鏈接:http://muchs.cn/news/200316.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、電子商務關鍵詞優(yōu)化、品牌網(wǎng)站制作、ChatGPT、網(wǎng)頁設計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設