本篇文章給大家分享的是有關(guān)serverless與云開(kāi)發(fā)實(shí)例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
西林網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)2013年至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
2020 年初的一場(chǎng)疫情讓我們有了更多宅在家里學(xué)習(xí)的時(shí)間了。前不久我也受邀擔(dān)任了騰訊主辦的「協(xié)力抗疫,碼力全開(kāi)」線上公益黑客馬拉松的嘉賓評(píng)委。這次黑馬大賽和以往不同之處在于全程都是線上,自由組隊(duì),通過(guò) 2 天時(shí)間開(kāi)發(fā)一款和抗擊疫情相關(guān)的微信小程序。2 天時(shí)間有近 200 人提交了 80 多個(gè)參賽作品。
這次大賽還有一個(gè)技術(shù)上的兩點(diǎn)就是“云開(kāi)發(fā)”。
提到云開(kāi)發(fā),我們自然會(huì)想到另一個(gè)概念,那就是 Serverless。毫無(wú)疑問(wèn) 2019 年是 Serverless 大規(guī)模推廣的一年,無(wú)論是 Serverless 相關(guān)書(shū)籍和文章,還是各種大會(huì)上關(guān)于 Serverless 相關(guān)的主題,都是非常熱門(mén)的。甚至有很多文章稱 Serverless 為前端 3.0。
以 ajax 為代表的前端 1.0
以 Node.js 為代表的前端 2.0
以 Serverless 為代表的前端 3.0
Node.js 更是把前端 JavaScript 的能力帶到了服務(wù)器端,使得前端開(kāi)發(fā)者可以方便的搞 Full Stack 或者 (BFF)Backends for Frontend。很多前端開(kāi)發(fā)者也把自己的職業(yè)目標(biāo)定義為了全棧工程師。顯然這與主流軟件開(kāi)發(fā)的理念是違背的:讓專業(yè)的人做專業(yè)的事。很多開(kāi)發(fā)者也慢慢從“全棧工程師”變成了“全干工程師”——什么都會(huì)干,卻什么都干不好。
你作為前端開(kāi)發(fā)者,還懂如何配置 nginx。但是你配的 nginx 真的是最優(yōu)的嗎?為什么不交給專業(yè)的人去做呢?
你作為前端開(kāi)發(fā)者,還懂如何配置 MySQL。但是你配的 mysql 真的是最優(yōu)的嗎?為什么不交給專業(yè)的人去做呢?
你作為前端開(kāi)發(fā)者,真的懂并發(fā)、網(wǎng)絡(luò)、擴(kuò)容、容災(zāi)、監(jiān)控、日志嗎?為什么不交給專業(yè)的人去做呢?
通過(guò)本次黑馬大賽期間我和幾名開(kāi)發(fā)者聊天,大概了解到了云開(kāi)發(fā)的概念?;旧峡梢哉J(rèn)為是一套構(gòu)建于 Serverless 的最佳實(shí)踐和解決方案,涵蓋了 FaaS(Function as a service,函數(shù)即服務(wù))和 BaaS(Backend as a service,后端及服務(wù))的綜合體。
具體實(shí)現(xiàn)為下圖所示的模型:
以云開(kāi)發(fā)體系提供的功能和服務(wù)為基礎(chǔ)支撐,前端開(kāi)發(fā)者的關(guān)注點(diǎn)除了 UI 和交互邏輯以外,能夠以很小的成本接入以云函數(shù)為承載的業(yè)務(wù)邏輯層和以云數(shù)據(jù)庫(kù)、云存儲(chǔ)為支撐的數(shù)據(jù)存儲(chǔ)層。簡(jiǎn)而言之,前端的關(guān)注點(diǎn)為:交互邏輯 + 業(yè)務(wù)邏輯(云函數(shù))+ 數(shù)據(jù)(云數(shù)據(jù)庫(kù)/云存儲(chǔ))。
很多將 Serverless 的文章都會(huì)提到 cdn(Content Delivery Network,內(nèi)容分發(fā)網(wǎng)絡(luò)),這也是大多數(shù)前端開(kāi)發(fā)者接觸到的第一個(gè) Serverless 服務(wù),即使在 Serverless 這個(gè)名詞誕生之前我們就已經(jīng)使用了很久了。使用 CDN 開(kāi)發(fā)者不需要關(guān)心文件的私密性、安全性、鑒權(quán)機(jī)制,不需要了解 CDN 服務(wù)器的狀態(tài)、文件存儲(chǔ)的具體位置,只需要部署文件即可,CDN 對(duì)于前端開(kāi)發(fā)者來(lái)說(shuō)就是 Serverless 的。
在本次黑馬大賽中 80% 多的開(kāi)發(fā)者使用了云開(kāi)發(fā),而其中使用最多的功能則是云函數(shù)。云函數(shù)類似 AWS Lambda,開(kāi)發(fā)者只需使用平臺(tái)支持的語(yǔ)言編寫(xiě)核心代碼并設(shè)置代碼運(yùn)行的條件,即可在騰訊云基礎(chǔ)設(shè)施上彈性、安全地運(yùn)行代碼。
云函數(shù)帶來(lái)的最明顯的優(yōu)勢(shì)就是用戶只需編寫(xiě)最重要的“核心代碼”,不再需要關(guān)心周邊組件,極大地降低了服務(wù)架構(gòu)搭建的復(fù)雜性。無(wú)需任何手動(dòng)配置,云函數(shù)即可根據(jù)請(qǐng)求量自動(dòng)橫向擴(kuò)縮。不管您的應(yīng)用每天的請(qǐng)求數(shù)處于波峰還是波谷,SCF 均可自動(dòng)安排合理的計(jì)算資源滿足業(yè)務(wù)需求。
本次黑馬大賽采用云開(kāi)發(fā)還有一個(gè)最大的優(yōu)勢(shì)就是“零部署,零維護(hù)”,因此參賽者都是開(kāi)發(fā)者,沒(méi)有專業(yè)的運(yùn)維工程師。而任何一個(gè)小程序的上線,除了大家看到的小程序,背后還有網(wǎng)關(guān)、計(jì)算服務(wù)、基礎(chǔ)設(shè)施管理、數(shù)據(jù)庫(kù)、文件服務(wù)、緩存服務(wù)等等。云開(kāi)發(fā)提供了較完整的服務(wù)器架構(gòu),并且能夠保證服務(wù)的穩(wěn)定性。
以上就是serverless與云開(kāi)發(fā)實(shí)例分析,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。