為什么我們要使用無(wú)服務(wù)器架構(gòu)?
如今談?wù)摕o(wú)服務(wù)器架構(gòu),大多數(shù)都是關(guān)注其與function-as-service的集成、如何編排訪問(wèn)請(qǐng)求,以及基于無(wú)服務(wù)器架構(gòu)的故障排查工具等等。然而,沒有多少精力關(guān)注在為什么選擇無(wú)服務(wù)器架構(gòu),而不是傳統(tǒng)架構(gòu)背后的深層次原因,這是為什么呢?
降低開發(fā)成本
使用無(wú)服務(wù)器架構(gòu)(serverless)的首要原因,正如其名字所表明的那樣,將服務(wù)器從我們的關(guān)注項(xiàng)中移除。我們不得不承認(rèn),并沒有真正的無(wú)服務(wù)器(無(wú)服務(wù)器僅僅只是對(duì)托管在云端的服務(wù)器的另一種說(shuō)法)的應(yīng)用,選擇一種無(wú)服務(wù)器架構(gòu)的實(shí)現(xiàn),獲得的好處只是不必開發(fā)服務(wù)器端代碼罷了。
在傳統(tǒng)的客戶端 - 服務(wù)器應(yīng)用程序中,基于數(shù)據(jù)的所有API和端點(diǎn)都需要由開發(fā)人員實(shí)現(xiàn)。開發(fā)方式包括通過(guò)使用像Rails這樣的框架自己編寫代碼,或者通過(guò)利用可將底層調(diào)用轉(zhuǎn)換為可調(diào)用的REST API的第三方工具來(lái)實(shí)現(xiàn)。
使用無(wú)服務(wù)器架構(gòu),您可以將大量的后端技術(shù)工作交給第三方,從而無(wú)需關(guān)注將Web應(yīng)用推向市場(chǎng)的復(fù)雜工作。這顯著降低了開發(fā)成本。您的開發(fā)人員可以專注于用戶界面和用戶體驗(yàn),您的應(yīng)用最具特色的地方將會(huì)更具有吸引力。
減少DevOps和維護(hù)成本
涉及到應(yīng)用的開發(fā)和托管Web應(yīng)用的直接成本很多。其中包括開發(fā)人員薪酬,托管費(fèi)用,域名注冊(cè)費(fèi)用,數(shù)據(jù)傳輸費(fèi)用等。此外,對(duì)于web應(yīng)用程序,您通常需要保持服務(wù)器不間斷運(yùn)行,以處理一天中任何時(shí)間的訪問(wèn)請(qǐng)求。這意味著對(duì)于訪問(wèn)頻率低的應(yīng)用程序,每天只能運(yùn)行一個(gè)小時(shí)的計(jì)算時(shí)間,您仍然需要為您的應(yīng)用程序可用但尚未使用的其他二十三小時(shí)付費(fèi)。
使用像AWS Lambda這樣的功能即服務(wù)實(shí)用程序,您可以通過(guò)確保只有在應(yīng)用程序處于活動(dòng)狀態(tài)時(shí)付費(fèi),才能進(jìn)一步降低成本。功能即服務(wù)運(yùn)行在按執(zhí)行次數(shù)計(jì)費(fèi)的模式,所以您只需要在代碼實(shí)際被調(diào)用時(shí)支付托管和計(jì)算資源。許多Web應(yīng)用程序通常是空閑的,因此可以顯著節(jié)省成本。
雖然您可以使用Docker等產(chǎn)品在Heroku上托管容器來(lái)獲得類似的收益,但您將無(wú)法獲得功能即服務(wù)的無(wú)服務(wù)器提供商允許的純粹級(jí)別,該服務(wù)器只提供一個(gè)實(shí)例, 實(shí)際上調(diào)用了一個(gè)單獨(dú)的函數(shù)。通過(guò)確保您的代碼僅在實(shí)際需要時(shí)處于活動(dòng)狀態(tài),這種間歇性安裝和卸載容器可以減少托管和資源使用成本。
減少面市時(shí)間
除了減少代碼量和運(yùn)營(yíng)成本外,還可以減少交付時(shí)間。通過(guò)犧牲硬件和服務(wù)器端的靈活性,您可以通過(guò)將復(fù)雜性移到客戶端來(lái)減少開發(fā)應(yīng)用程序所需的時(shí)間,將您的努力專注到代碼庫(kù)中的單一語(yǔ)言中。
此外,您不需要找到提供商,運(yùn)行起來(lái)服務(wù)器,配置Web服務(wù)器軟件,并讓您的應(yīng)用程序在機(jī)器上運(yùn)行,最終會(huì)是一個(gè)更簡(jiǎn)單的問(wèn)題。您還可以獲得更多的主機(jī)選擇,因?yàn)闊o(wú)服務(wù)器應(yīng)用程序只需要一個(gè)可以為其終端用戶提供文件的CDN,而不是在處理來(lái)自網(wǎng)絡(luò)用戶的請(qǐng)求,運(yùn)行編程語(yǔ)言的運(yùn)行時(shí)的特定Web服務(wù)器。
最后,通過(guò)將您的應(yīng)用程序的服務(wù)器端交給無(wú)服務(wù)器的提供商,您可以通過(guò)允許第三方管理應(yīng)用的安全來(lái)提升安全性。通過(guò)這種方式,可以減少對(duì)web服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器的安全防護(hù),以及在傳統(tǒng)客戶端-服務(wù)器應(yīng)用程序中至關(guān)重要的任何其他后端安全性問(wèn)題所需的工作。
結(jié)論
雖然許多應(yīng)用程序由于特定的需求或者某些其他原因而無(wú)法在無(wú)服務(wù)器環(huán)境中運(yùn)行,但與其傳統(tǒng)的客戶端/服務(wù)器應(yīng)用相比,支持無(wú)服務(wù)器架構(gòu)的應(yīng)用程序具有許多優(yōu)勢(shì)。通過(guò)使用無(wú)服務(wù)器的提供程序,您可以減少所需的代碼量,讓第三方基于您的數(shù)據(jù)源構(gòu)建API。
您還可以通過(guò)允許您的代碼以更間歇的方式運(yùn)行,僅在需要時(shí)才啟動(dòng)(和終止)實(shí)例,從而降低運(yùn)營(yíng)成本。
基于這兩個(gè)好處,以及其他尚未被發(fā)掘的優(yōu)勢(shì),您可以看到產(chǎn)品上市時(shí)間縮短,因?yàn)槟梢詫W⒂谕庥^、感覺、以及您的應(yīng)用程序基本的交互行為。雖然無(wú)服務(wù)器架構(gòu)可能不適合您,但對(duì)于越來(lái)越多的公司來(lái)說(shuō),這是一個(gè)可行且明智的選擇。

責(zé)任編輯:售電衡衡
- 相關(guān)閱讀
- 碳交易
- 節(jié)能環(huán)保
- 電力法律
- 電力金融
- 綠色電力證書
-
碳中和戰(zhàn)略|趙英民副部長(zhǎng)致辭全文
2020-10-19碳中和,碳排放,趙英民 -
兩部門:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè) -
國(guó)家發(fā)改委、國(guó)家能源局:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè)
-
碳中和戰(zhàn)略|趙英民副部長(zhǎng)致辭全文
2020-10-19碳中和,碳排放,趙英民 -
深度報(bào)告 | 基于分類監(jiān)管與當(dāng)量協(xié)同的碳市場(chǎng)框架設(shè)計(jì)方案
2020-07-21碳市場(chǎng),碳排放,碳交易 -
碳市場(chǎng)讓重慶能源轉(zhuǎn)型與經(jīng)濟(jì)發(fā)展并進(jìn)
2020-07-21碳市場(chǎng),碳排放,重慶
-
兩部門:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè) -
國(guó)家發(fā)改委、國(guó)家能源局:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè) -
2020年二季度福建省統(tǒng)調(diào)燃煤電廠節(jié)能減排信息披露
2020-07-21火電環(huán)保,燃煤電廠,超低排放
-
四川“專線供電”身陷違法困境
2019-12-16專線供電 -
我國(guó)能源替代規(guī)范法律問(wèn)題研究(上)
2019-10-31能源替代規(guī)范法律 -
區(qū)域鏈結(jié)構(gòu)對(duì)于數(shù)據(jù)中心有什么影響?這個(gè)影響是好是壞呢!