吴忠躺衫网络科技有限公司

您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>數(shù)值算法/人工智能>

詳解Serverless架構(gòu)及應(yīng)用

大小:0.3 MB 人氣: 2017-09-28 需要積分:1

  一、直接使用物理設(shè)備:

  開(kāi)發(fā)者將應(yīng)用程序開(kāi)發(fā)測(cè)試完畢后,直接將程序和相關(guān)軟件部署在物理設(shè)備上。服務(wù)器直接使用物理機(jī)。直接使用物理設(shè)備部署應(yīng)用程序不可避免地需要大量人工運(yùn)維和重復(fù)勞動(dòng)。比方說(shuō),用戶數(shù)量逐漸增長(zhǎng)時(shí),我們需要擴(kuò)容物理設(shè)備以應(yīng)對(duì)更高的網(wǎng)站訪問(wèn)壓力。

  這時(shí)候我們需要購(gòu)置更多的物理服務(wù)器,并且搬運(yùn)到機(jī)房的對(duì)應(yīng)機(jī)架機(jī)柜中。然后,我們需要手動(dòng)為新購(gòu)置的物理服務(wù)器安裝各種運(yùn)行軟件,填寫(xiě)好配置文件,手動(dòng)部署啟動(dòng)好需要運(yùn)行的應(yīng)用程序。這些大量的重復(fù)運(yùn)維勞動(dòng)造成產(chǎn)品上線慢,迭代周期長(zhǎng)。其次,使用物理設(shè)備直接部署應(yīng)用程序?qū)?dǎo)致資源浪費(fèi)。如今的物理服務(wù)器的配置越來(lái)越強(qiáng)大,64核128G在今天看來(lái)也不過(guò)是普通配置。很難想象你買(mǎi)了一臺(tái)32核的物理機(jī),卻只想搭建個(gè)人博客。此外,電商行業(yè)經(jīng)常為了應(yīng)對(duì)促銷(xiāo)秒殺等活動(dòng)準(zhǔn)備大量的物理資源,然而在非促銷(xiāo)等流量低谷時(shí)段,大量物理資源處理閑置狀態(tài),不利于節(jié)約成本。

  最后,為了解決資源浪費(fèi)的問(wèn)題,我們很容易想到,可以將多個(gè)應(yīng)用程序部署在同一臺(tái)服務(wù)器上來(lái)充分利用資源。但由此又導(dǎo)致了新的麻煩,不同的應(yīng)用程序經(jīng)常會(huì)搶占CPU,磁盤(pán)IO,內(nèi)存,難以做到隔離資源,各行其是,互不干擾。

  二、IaaS托管硬件

  虛擬化技術(shù)的成熟直接解決了上述直接使用物理設(shè)備的幾個(gè)痛點(diǎn)。

  首先,使用IaaS平臺(tái),服務(wù)器由物理機(jī)變成了虛擬機(jī)。申請(qǐng)服務(wù)器資源僅需要調(diào)用IaaS平臺(tái)的API或者點(diǎn)擊控制臺(tái)頁(yè)面就可以輕松完成。CPU個(gè)數(shù),內(nèi)存大小,網(wǎng)絡(luò)帶寬,存儲(chǔ)磁盤(pán)大小都可以按需指定,隨心所欲。虛擬機(jī)被玩壞了也不需要重裝系統(tǒng)修復(fù),刪除重建新虛擬機(jī)即可。擴(kuò)容服務(wù)器不再需要大量的重復(fù)人工運(yùn)維勞動(dòng),加速了產(chǎn)品上線和迭代。

  其次,使用IaaS平臺(tái)一定程度上減輕了資源浪費(fèi)。在IaaS平臺(tái)上很容易得申請(qǐng)和刪除虛擬機(jī),升降帶寬配置等操作,這樣當(dāng)業(yè)務(wù)低谷時(shí)段直接刪除多余的虛擬機(jī),降低帶寬購(gòu)買(mǎi)配額,就能節(jié)約不少成本。

  最后,IaaS平臺(tái)解決了資源隔離的問(wèn)題。不同虛擬機(jī)之前有獨(dú)立CPU,內(nèi)存,磁盤(pán),網(wǎng)卡,不同虛擬機(jī)之前的程序不會(huì)進(jìn)行資源搶占。

  然而,IaaS平臺(tái)僅僅為開(kāi)發(fā)者做好了硬件托管的工作。開(kāi)發(fā)者依然需要為虛擬機(jī)安裝操作系統(tǒng)和各種軟件,填寫(xiě)配置并部署應(yīng)用;依然需要關(guān)注服務(wù)器,帶寬,存儲(chǔ)等資源的使用量和擴(kuò)容縮容。此外,IaaS平臺(tái)沒(méi)有完全解決資源浪費(fèi)的問(wèn)題,實(shí)際上,大量虛擬機(jī)在日常運(yùn)行中依然存在超低負(fù)載運(yùn)行的情況。

  三、 PaaS托管應(yīng)用

  使用PaaS平臺(tái),開(kāi)發(fā)者無(wú)需關(guān)注服務(wù)器的申請(qǐng)采購(gòu)、系統(tǒng)安裝和資源容量。PaaS服務(wù)提供商為開(kāi)發(fā)者提供好了操作系統(tǒng)和開(kāi)發(fā)環(huán)境以及支持的SDK和API,還能自動(dòng)調(diào)整資源來(lái)幫助應(yīng)用服務(wù)更好的應(yīng)對(duì)突發(fā)流量。有了PaaS平臺(tái),開(kāi)發(fā)者僅僅需要把應(yīng)用開(kāi)發(fā)好,然后在PaaS平臺(tái)完成服務(wù)部署,應(yīng)用服務(wù)即可上線。

  相比IaaS平臺(tái),PaaS平臺(tái)能更加精準(zhǔn)的為應(yīng)用程序所消耗的資源計(jì)費(fèi)。IaaS平臺(tái)僅僅依據(jù)用戶申請(qǐng)的資源量,如CPU核心數(shù),網(wǎng)絡(luò)帶寬來(lái)計(jì)費(fèi),而不關(guān)注用戶是否實(shí)際真正充分使用了其所申請(qǐng)到的資源。PaaS平臺(tái)則可以通過(guò)統(tǒng)計(jì)應(yīng)用程序所占用的CPU使用率和內(nèi)存使用率來(lái)做的更精準(zhǔn)的計(jì)費(fèi),甚至可以實(shí)現(xiàn)應(yīng)用層面的計(jì)費(fèi),比如服務(wù)響應(yīng)時(shí)間,或者應(yīng)用所消耗的事務(wù)。

  什么是Serverless?

  詳解Serverless架構(gòu)及應(yīng)用

  圖1:互聯(lián)網(wǎng)應(yīng)用傳統(tǒng)架構(gòu)的模型和Serverless架構(gòu)模型

  Serverless指的是由開(kāi)發(fā)者實(shí)現(xiàn)的服務(wù)端邏輯運(yùn)行在無(wú)狀態(tài)的計(jì)算容器中,它由事件觸發(fā), 完全被第三方管理,其業(yè)務(wù)層面的狀態(tài)則被開(kāi)發(fā)者使用的數(shù)據(jù)庫(kù)和存儲(chǔ)資源所記錄。

  以上圖1為例,圖中上半部分描述的是互聯(lián)網(wǎng)應(yīng)用傳統(tǒng)架構(gòu)的模型:用戶客戶端APP與部署在服務(wù)器端的常駐進(jìn)程通信,服務(wù)端進(jìn)程處理該應(yīng)用的大部分業(yè)務(wù)邏輯流程。下半部分則描述了Serverless架構(gòu)模型。與傳統(tǒng)架構(gòu)模型最大的不同在于,互聯(lián)網(wǎng)應(yīng)用的大部分業(yè)務(wù)邏輯流程被轉(zhuǎn)移到客戶端上,客戶端通過(guò)調(diào)用第三方服務(wù)接口來(lái)完成諸如登錄,鑒權(quán),讀取數(shù)據(jù)庫(kù)等通用業(yè)務(wù)場(chǎng)景;高度定制化的業(yè)務(wù)邏輯則通過(guò)調(diào)用第三方FaaS平臺(tái)執(zhí)行自定義代碼來(lái)完成。總體上看,Serverless架構(gòu)將傳統(tǒng)架構(gòu)中的服務(wù)器端的整串總體流程拆分成在客戶端上執(zhí)行一個(gè)個(gè)第三方服務(wù)調(diào)用或FaaS調(diào)用。

  回顧之前所述,無(wú)論是直接使用物理服務(wù)器設(shè)備部署程序,還是基于IaaS平臺(tái)托管硬件,或者使用PaaS平臺(tái)托管應(yīng)用,開(kāi)發(fā)部署互聯(lián)網(wǎng)應(yīng)用都離不開(kāi)傳統(tǒng)的客戶端-服務(wù)器模式,即客戶端向服務(wù)端發(fā)送請(qǐng)求,服務(wù)器運(yùn)行處理各種業(yè)務(wù)邏輯,并響應(yīng)來(lái)自客戶端的請(qǐng)求。至于物理機(jī),IaaS乃至PaaS,歸根結(jié)底只是服務(wù)器程序的部署模式不同。

  而在Serverless架構(gòu)中,軟件開(kāi)發(fā)者和運(yùn)維工程師們不在需要關(guān)心服務(wù)器的部署,架設(shè),伸縮,這些問(wèn)題交給云平臺(tái)商來(lái)解決,程序員們得以將精力投入用代碼來(lái)實(shí)現(xiàn)業(yè)務(wù)邏輯中,而不是管理服務(wù)器。Serverless并不意味著不再需要服務(wù)器了,只是服務(wù)器資源的申請(qǐng),使用,調(diào)度伸縮由云服務(wù)商自動(dòng)實(shí)現(xiàn),應(yīng)用開(kāi)發(fā)者無(wú)需關(guān)心。

  Serverless如何工作?

  以一個(gè)簡(jiǎn)單需求為例,論壇網(wǎng)站需要對(duì)用戶上傳的圖片生成一個(gè)縮略圖。

  我們使用我們自研的通用計(jì)算(UGC)來(lái)實(shí)現(xiàn)該功能。

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      百家乐好赌吗| 皇冠百家乐的玩法技巧和规则| 足球百家乐官网投注计算| 澳门赌博| 宝马会娱乐城返水| 大发888娱乐城客户端lm0| 网上百家乐赌城| 玩百家乐官网678娱乐城| 网上真钱麻将| 御金娱乐城| 宝龙娱乐城官网| 百家乐游戏大小| JJ百家乐官网的玩法技巧和规则| 澳门百家乐官网娱乐城注册| 百家乐官网作弊内幕| 郸城县| 安陆市| 百家乐官网真人投注网站| 百家乐官网游戏解密| 百家乐官网娱乐城有几家| 明升网站| ,大发扑克下载| 全讯网官方| 阜城县| 狮威百家乐的玩法技巧和规则| 月亮城百家乐官网的玩法技巧和规则| 百家乐官网局部| 百家乐官网返水1.2不限| 百家乐官网科学打法| 帝王百家乐官网的玩法技巧和规则| 百家乐官网平注法口诀技巧| 菲律宾百家乐官网娱乐平台| 百家乐官网桌码合| 有钱人百家乐官网的玩法技巧和规则 | 石屏县| 来博百家乐官网游戏| 娱乐城百家乐官网技巧| 真人百家乐官网蓝盾娱乐网| 百家乐官网必胜打| 百家乐视频游戏网址| 百家乐园zyylc|