報(bào)告:Serverless 已成為許多軟件堆棧的關(guān)鍵部分
Datadog 發(fā)布了一份 2021 年 Serverless 狀態(tài)報(bào)告指出,從云原生初創(chuàng)公司到大型企業(yè),Serverless 已經(jīng)在各種規(guī)模的組織中流行。該報(bào)告研究了數(shù)千家公司運(yùn)行的數(shù)百萬(wàn)個(gè)功能,以了解 Serverless 在現(xiàn)實(shí)世界中的應(yīng)用情況。
報(bào)告指出,AWS Lambda 是最成熟、使用最廣泛的 FaaS 產(chǎn)品;Azure Functions 和 Google Cloud Functions 的應(yīng)用也出現(xiàn)了驚人的增長(zhǎng)。現(xiàn)如今,Serverless 生態(tài)系統(tǒng)已經(jīng)超越了 FaaS,包括了幾十種服務(wù),幫助開發(fā)者建立更快、更動(dòng)態(tài)的應(yīng)用程序。四分之一的亞馬遜 CloudFront 用戶已經(jīng)接受了 Serverless 邊緣計(jì)算,企業(yè)也在利用 AWS Step Functions 來管理各種分布式組件的應(yīng)用邏輯。
研究表明,在 2021 年年初, AWS Lambda 函數(shù)的調(diào)用頻率已經(jīng)是 2019 年的 3.5 倍。這表明,各團(tuán)隊(duì)正在將 Serverless 作為其軟件堆棧的重要組成部分,而不僅僅是進(jìn)行試驗(yàn)。
Azure Functions 和 Google Cloud Functions 勢(shì)頭強(qiáng)勁,其均已在各自的云平臺(tái)中采用。在過去的一年中,運(yùn)行 Azure Functions 的 Azure 組織的比例從 20% 上升到 36%。在 Google Cloud 上,近四分之一的組織現(xiàn)在在使用 Cloud Functions。
此外,AWS Lambda 的調(diào)用也比一年前要快得多。2020 年,Lambda 調(diào)用的中位數(shù)為 60 毫秒,約為前一年時(shí)間的一半。報(bào)告稱,其中一種可能的解釋是,更多的組織正在遵循 Lambda 的最佳實(shí)踐,并設(shè)計(jì)特定于其工作負(fù)載的功能,這有助于縮短調(diào)用時(shí)間。調(diào)查還注意到,延遲分布的 tail 很長(zhǎng),這表明 Lambda 不僅僅是為 short-lived 的工作提供動(dòng)力,也為更多的計(jì)算密集型用例提供了動(dòng)力。
AWS Step Functions 變得越來越重要。AWS Step Functions 使開發(fā)人員能夠建立涉及多個(gè) Lambda functions 和 AWS 服務(wù)的事件驅(qū)動(dòng)的 workflow。在這些 workflow 中,Step Functions 協(xié)調(diào)錯(cuò)誤處理、重試、超時(shí)和其他應(yīng)用邏輯,這有助于在 serverless 應(yīng)用程序擴(kuò)展時(shí)降低操作復(fù)雜性。研究表明,Step Functions workflow 平均包含 4 個(gè) Lambda functions,且這一數(shù)字還在逐月增加。
Step Functions 提供了兩種類型的 workflow:Standard 和 Express。報(bào)告指出,有超過 40% 的 workflow 在一分鐘內(nèi)執(zhí)行,這表明企業(yè)很可能使用 Express workflow 來支持大批量的事件處理工作負(fù)載。不過,雖然許多 workflow 執(zhí)行迅速,但也有一些運(yùn)行時(shí)間很長(zhǎng),最長(zhǎng)的超過了一個(gè)星期。
邊緣計(jì)算正備受關(guān)注。如今,四分之一的使用 Amazon CloudFront 的組織正在利用 Lambda@Edge 為其全球用戶群提供更多個(gè)性化的體驗(yàn)。例如,Lambda@Edge 可以根據(jù)用戶特征(如,設(shè)備類型)動(dòng)態(tài)地轉(zhuǎn)換圖像,或者為 A/B 測(cè)試提供不同版本的 Web 應(yīng)用程序。
數(shù)據(jù)顯示,67% 的 Lambda@Edge functions 的運(yùn)行時(shí)間低于 20 毫秒,這表明無(wú)服務(wù)器邊緣計(jì)算具有巨大的潛力,甚至可以以最小的開銷支持最關(guān)鍵的延遲應(yīng)用。Datadog 方面表示,隨著這項(xiàng)技術(shù)的成熟,其希望看到更多的組織依靠它來改善他們的終端用戶體驗(yàn)。
調(diào)查還發(fā)現(xiàn),各個(gè)組織在 Provisional Concurrency 方面都出現(xiàn)了超支。Serverless Framework 是使用 AWS CloudFormation 部署 Lambda 應(yīng)用程序的主要方法。
Python 則是最受歡迎的 Lambda 運(yùn)行時(shí),尤其是在大型環(huán)境中。自 2018 年以來,Lambda 已經(jīng)提供了對(duì)六個(gè)運(yùn)行時(shí)的支持。Node.js、Python、Java、Go、.NET Core 和 Ruby。然而,Python 和 Node.js 繼續(xù)在 Lambda 用戶中占主導(dǎo)地位,占近 90% 的 function。在所有部署的 Lambda 中,58% 運(yùn)行 Python(比一年前增加了 11 個(gè)百分點(diǎn)),另有 31% 運(yùn)行 Node.js(與去年相比下降了 8 個(gè)百分點(diǎn))。
完整報(bào)告可查看:https://www.datadoghq.com/state-of-serverless/
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:報(bào)告:Serverless 已成為許多軟件堆棧的關(guān)鍵部分
本文地址:https://www.oschina.net/news/143469/state-of-serverless-2021