新聞中心
無服務(wù)器計算和容器都使開發(fā)人員能夠以比傳統(tǒng)服務(wù)器或虛擬機(jī)上托管的應(yīng)用程序更少的開銷和更大的靈活性構(gòu)建應(yīng)用程序。開發(fā)人員應(yīng)該使用哪種風(fēng)格的體系結(jié)構(gòu)取決于應(yīng)用程序的需求,但無服務(wù)器應(yīng)用程序更具可擴(kuò)展性,而且通常更具成本效益。

堅守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價值觀,專業(yè)網(wǎng)站建設(shè)服務(wù)10余年為成都宣傳片制作小微創(chuàng)業(yè)公司專業(yè)提供成都企業(yè)網(wǎng)站定制營銷網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)小程序網(wǎng)站建設(shè)網(wǎng)站改版,從內(nèi)容策劃、視覺設(shè)計、底層架構(gòu)、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設(shè)服務(wù)。
在本文中,我們看一看爭論:無服務(wù)器計算與容器,并提供我們對這兩種模型的見解。
newrelic去年進(jìn)行的一項研究顯示,70%的企業(yè)已經(jīng)將大量工作負(fù)載遷移到公共云上。在這組人中,39%的人使用無服務(wù)器,40%的人使用容器,34%的人使用某種容器編排。這說明了無服務(wù)器技術(shù)的采用如何與容器的采用相匹配,但還不太清楚的是在生產(chǎn)應(yīng)用程序中的使用范圍。
什么是無服務(wù)器計算 serverless computing?
Serverless是一種開發(fā)方法,它用計算能力取代長時間運行的虛擬機(jī),這種計算能力是按需產(chǎn)生的,使用后立即消失。
不管名稱如何,運行應(yīng)用程序時肯定會涉及到服務(wù)器。只是你的云服務(wù)提供商,不管是AWS、Azure還是Google云平臺,都在管理這些服務(wù)器,而且它們并不總是在運行。
相反,您可以配置觸發(fā)無服務(wù)器函數(shù)執(zhí)行的事件,如API請求或文件上載。當(dāng)該操作完成時,服務(wù)器將處于空閑狀態(tài),直到請求另一個操作為止,并且不會為空閑時間計費。
換句話說,無服務(wù)器計算是操作系統(tǒng)之上的另一種抽象,它提供了一種機(jī)制,可以在許多較小的部分中運行應(yīng)用程序。它提供函數(shù)或模塊來執(zhí)行應(yīng)用程序任務(wù),這些任務(wù)可以按需執(zhí)行,而不必?fù)?dān)心底層操作系統(tǒng)和硬件基礎(chǔ)設(shè)施。這些任務(wù)通常是短期的,并根據(jù)應(yīng)用程序的要求定期運行。與云計算需要物理硬件的方式類似,無服務(wù)器計算也需要服務(wù)器來執(zhí)行任何應(yīng)用程序。
采用無服務(wù)器模式可以降低成本,加快部署速度,提高可擴(kuò)展性,并減少過度工作的IT團(tuán)隊的管理時間。Serverless還非常適合支持各種微服務(wù),并受到DevOps開發(fā)人員的歡迎。
無服務(wù)器計算的好處包括:
- 降低成本
- 無服務(wù)器管理
- 簡化的可擴(kuò)展性
- 快速部署和更新
- 簡化的后端代碼
- 更快的周轉(zhuǎn)
什么是容器?
Docker認(rèn)為,容器是一個輕量級的、獨立的、可執(zhí)行的軟件包,包含運行它所需的一切:代碼、運行時、系統(tǒng)工具、系統(tǒng)庫和設(shè)置。
容器解決了當(dāng)軟件從一個計算環(huán)境中移出時運行軟件的問題,它本質(zhì)上是將軟件與其環(huán)境隔離開來的。例如,容器允許您將軟件從開發(fā)轉(zhuǎn)移到暫存,從暫存轉(zhuǎn)移到生產(chǎn),并使其可靠地運行,而不考慮所有環(huán)境的差異。
容器不是像虛擬機(jī)那樣虛擬化硬件堆棧,而是在操作系統(tǒng)級別虛擬化,多個容器直接在操作系統(tǒng)內(nèi)核上運行。這意味著容器更加輕量級:它們共享操作系統(tǒng)內(nèi)核,啟動速度更快,與啟動整個操作系統(tǒng)相比,只使用了一小部分內(nèi)存。
有許多可用的容器格式。Docker是一種流行的、開源的容器格式,在Google云平臺和Google Kubernetes引擎上都得到了支持。
采用趨勢
根據(jù)一些調(diào)查和研究,無服務(wù)器和容器的采用率都在快速增長。以下是我挑選的一些亮點。
- Cloudability的一項研究發(fā)現(xiàn),2017年第四季度,AWS用戶的容器采用率增長了246%,高于第三季度的206%。與此同時,同一項研究發(fā)現(xiàn),2017年第四季度AWS用戶的無服務(wù)器采用率增長了667%,高于第三季度的321%。
- Serverless Inc.最近的一項調(diào)查發(fā)現(xiàn),2018年,82%的記者在工作中使用Serverless,高于2017年的45%。超過53.2%的人表示,他們使用Serverless技術(shù)對工作至關(guān)重要。
- serverlessinc.的調(diào)查還顯示,24%的通訊員在采用Serverless之前對公共云的體驗有限或為零。20.2%的記者在1000人以上的大企業(yè)工作。
- Logz.io的DevOps Pulse調(diào)查發(fā)現(xiàn),2018年60.71%的通訊員采用了集裝箱編排,高于2017年的42.11%。
根據(jù)Rightscale的說法,serverless是一種正在增長的云服務(wù):
開發(fā)人員應(yīng)該如何選擇Serverless架構(gòu)和容器?
選擇Serverless無服務(wù)器體系結(jié)構(gòu)的開發(fā)人員將能夠快速發(fā)布和迭代新的應(yīng)用程序,而不必?fù)?dān)心應(yīng)用程序是否可以擴(kuò)展。此外,如果應(yīng)用程序沒有看到一致的通信量或使用情況,那么無服務(wù)器計算將比容器更經(jīng)濟(jì)高效,因為代碼不需要一直運行。
容器使開發(fā)人員能夠更好地控制應(yīng)用程序運行的環(huán)境(盡管這也需要更多的維護(hù))以及所使用的語言和庫。因此,容器對于將遺留應(yīng)用程序遷移到云非常有用,因為可以更緊密地復(fù)制應(yīng)用程序的原始運行環(huán)境。
混合方法
也可以使用混合體系結(jié)構(gòu),一些無服務(wù)器功能和一些部署在容器中的功能。例如,如果應(yīng)用程序功能需要的內(nèi)存超過無服務(wù)器供應(yīng)商分配的內(nèi)存,如果某個功能太大,或者某些功能需要長時間運行,而其他功能不需要長時間運行,則混合體系結(jié)構(gòu)使開發(fā)人員能夠在仍然使用無服務(wù)器支持的功能的容器的情況下獲得無服務(wù)器的好處。
無服務(wù)器和容器也可以并排使用,而不是選擇一個或另一個。事實上,許多公司通過混合方法獲得了成功。他們:
- 在serverless滿足其需求的工作負(fù)載中使用serverless
- 在沒有容器的地方使用容器,例如,對于以下工作負(fù)載:
- 是長期的
- 需要更可預(yù)測的性能
- 需要比使用無服務(wù)器更容易實現(xiàn)的恢復(fù)能力
- 不斷地大規(guī)模運行,每次調(diào)用付費的定價模式變得過于昂貴
結(jié)論
Serverless無服務(wù)器計算和容器都為希望擴(kuò)展其工作負(fù)載的企業(yè)提供了優(yōu)勢。
當(dāng)前題目:Serverless計算與容器技術(shù):您應(yīng)該使用哪一種?
網(wǎng)頁地址:http://www.dlmjj.cn/article/dpgpcpj.html


咨詢
建站咨詢
