《Serverless,下一個趨勢?》要點:
本文介紹了Serverless,下一個趨勢?,希望對您有用。如果有疑問,可以聯系我們。
如果你看過有關2017年技術發展的預測,特別是云計算方面的預測,一定對Serverless Computing(無服務器計算)印象深刻.
AWS在2014年推出了第一個大型無服務器計算服務(AWS Lambda),其他云計算巨頭也紛紛在2016年開展了自己的Serverless Computing服務.對于Serverless Computing來說,2017年很可能會是收獲巨大突破的一年.
事實上,在Gartner推出的“2017年十大戰略技術趨勢”榜單中,Serverless Computing赫然在列.Gartner將Serverless Computing看作是MASA(the mesh app and service architecture)的重要部分,并解釋說,“MASA是一種多通道解決方案架構,利用云計算、無服務計算、容器、微服務、APIs及事件等提供模塊化、靈活、動態的解決方案”.Gartner同時提醒到,這將是一個長期的趨勢,需要IT采用新的工具和工作方法.
所以,關于Serverless Computing 我們應該知道哪些事?
Serverless Computing并不是真的沒有服務器
其實有很多人認為,Serverless Computing一詞并不是十分妥當.我們的工作負載仍然在某個服務器上運行著,只不過我們不需要以任何方式部署、配置、維護或管理這些服務器.我們甚至不需要知道所使用VM(虛擬機)的類型和數量.
我們可以把Serverless Computing看作是對于終端用戶的IT抽象和簡化.虛擬化使用戶不在需要知道哪些物理服務器正在運行;云計算使配置變得更容易,但仍需要用戶選擇VM類型、啟動或停止服務;而Serverless Computing則更進一步,將VM類型選擇、服務的啟動和停止操作都省去了.
Serverless Computing是云計算的一種
Serverless Computing的另一個更具描述性的名字是FaaS(Function as a service).就像IaaS、PaaS、SaaS一樣,FaaS是云計算的一種.通過FaaS,用戶為應用的某一特定功能購買必要的功能.
舉個例子,假設企業有一個用來生成特定報告的分析應用.我們可以使用Serverless Computing來處理生成特定報告的功能.當分析應用需要完成這一報告時,服務將自動啟動必要的云實例,并在功能完成后自動關閉.我們可以將FaaS用于整個應用程序或者某些功能.
Serverless Computing在代碼運行時以毫秒計費
Serverless Computing將云計算按使用計費的模式提升到了一個新的粒度級別.例如,AWS Lambda按代碼執行的每100毫秒和代碼的觸發次數向用戶收費.
Serverless Computing的優勢
Serverless Computing的一個主要好處是,創建應用程序的開發者不再需要花費任何時間處理基礎架構并管理應用程序.開發者僅需上傳代碼,支持Serverless Computing的平臺或服務將處理其他工作.
對于企業來說,支持Serverless Computing的平臺可以節省大量時間和成本,同時可以釋放員工,讓開發者得以開展更有價值的工作,而不是管理基礎設施.另一方面可以提高敏捷度,更快速地推出新應用和新服務,進而提高客戶滿意度.
Serverless Computing是DevOps的絕配
Serverless Computing在DevOps環境中運行良好,同樣源于它最大限度減少了開發者在管理服務器上所花費的工作和精力.甚至在某些情況下,允許企業采用“NoOps”的方法,服務器的部署和管理都已實現自動化,開發者不需要與運維人員一起同步工作.
Serverless Computing與微服務架構相關
微服務架構下,開發者將應用拆分為一個個可獨立構建、管理和擴展的小服務,而ServerlessComputing可以將之降低到更小的級別.
然而,行業內對于微服務和功能由什么組成,還存在分歧.兩者之間的區別比較模糊,有些供應商在微服務和功能兩個術語的使用上甚至可以互換.
需要注意的是,目前有一種趨勢是將應用程序視為較小的獨立部分的組件,而不是作為一個整體.
不需要學習新開發語言
Serverless Computing支持廣泛的編程語言和框架,大多數人員可以立即開始使用Serverless Computing,這樣的語言支持,無疑是勝利和效率提升的一大助力.
Serverless Computing具有可擴展性
對于處于快速增長期的企業,Serverless Computing的可擴展性是其最具吸引力的特性之一.構建一個同時即適用于數百萬用戶又適用于數十個用戶的應用,是當今開發者面臨的最大挑戰之一.
Serverless Computing消除了這一挑戰,因為其每個功能都可以獨立擴展,而不需要員工配置額外的VM或實例.
Serverless Computing也有缺點
首先,Serverless Computing很新,不容易找到有經驗的工作人員和工具來支持. 其次,Serverless Computing簡化了一些工作,卻也讓一些工作變得復雜了起來.將我們的關注點從一個大的應用程序或幾個微服務,轉為對幾十個甚至上百個獨立功能,需要有新的管理技術和流程. 第三,與每一項新技術類似,Serverless Computing短期內很可能會給企業帶來額外的花費,并對企業的管理水平提出更高要求.
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/4342.html