云計算 “拍了拍” Serverless

3 評論 9091 瀏覽 32 收藏 11 分鐘

本文筆者將根據自身工作經驗以及一些對于云計算的思考,來給大家科普一下云計算和Serverless的一些知識。文章主要分為四個部分:云計算與數字化、云計算與 Serverless、Serverless 的優勢和作用。

01 云計算與數字化

迄今為止,云計算已經不是一個新鮮的概念,云廠商的攻城略地,已經將這股春風吹向了互聯網的邊邊角角。而國家看在云計算降低用戶創業門檻和增加社會資源利用率的份上,也實打實的給到了政策支持。

云計算到底什么,用專業術語來說,那就是云計算不僅實現了 IT 池化、提升性能、降低成本和簡化管理,更重要的是為企業的數字化轉型提供了豐富服務和資源協同。

(圖片來源國務院發展研究中心:中國云計算產業發展白皮書)

而數字化為什么有這么大的魔力?讓企業這幾年都在紛紛提倡和轉型。

這是因為大家都看到了數據的力量,寄希望于改變傳統的生產模式,用數據驅動研發。這其中,數字化轉型最關鍵的就是打通企業內部的信息孤島,增加組織效率,從而實現用數字化增強和創新業務。

(圖片來源艾瑞:2019年中國數字中臺行業研究報告)

埃森哲出過一份報告,其中調研了中美企業CEO 對于數字化價值認識的側重點。

不出所料,對于各大企業的 CEO 來說,最為關注還是成本與效率。

而在近幾年,既 AWS 的Lambda推出 5 年后,Serverless 終于在國內逐漸有了聲音。而在之前,盡管云計算被譽為信息時代的水電煤,但是實際使用場景中卻無法做到即開即用(有幾分鐘的開啟時間),計費靈活(最小計費粒度為 1 小時)。而 Serverless 卻真正讓云計算從原始時代步入了“水電煤”時代。

02 云計算與 Serverless

Serverless 不是憑空誕生的,相反,是經歷了云計算技術發展必然技術。這里用一張圖展示下:

當然,看完圖后,你肯定會疑惑一件事情,Serverless 在哪里呢?

到目前為止,整個云計算行業的發展離不開有幾個比較關鍵的節點:

  1. 2001年 vmware 的發布的 ESX 和 GSX
  2. 2006 年 AWS 的發布的 IaaS 產品 EC2 和 S3
  3. 2009年 HEROKU 推出 Paas 平臺
  4. 2011 年推出開源的 OpenStack(國內云在這之后陸續崛起)
  5. 2013 年Docker發布
  6. 2014 年 AWS 又推出了 FaaS 產品 Lambda
  7. 2017 年 Docker 宣布支持 K8S 容器編排。

而其中,從基礎設施服務IaaS、平臺服務PaaS,再到如今的函數即服務 FaaS。云計算的發展經歷了種種變化,最終,用戶側關注的事情越來越少。

Serverless 是實現基于函數即服務 FaaS 的產品形態。在如今,FaaS 已經不再是一個新鮮和小眾的理念,據《Serverless 2020年現狀研究報告》表明,用 AWS Web Services 的 Datadog 客戶中有近一半已經采用了 AWS 的 Lambda。

這里看兩個單詞,Serverless和Serverful。講到對于Serverless的定義,離不開Serverful。

眾所周知,一個產品的上線離不開幾個角色:前端、后端、運維、測試和產品(嗯,打雜的)。

簡單來說,Serverfull 則是研發(前后端)和運維一起負責將服務上線且保證服務穩定。Serverless 則重新定義了服務邊界,讓研發(前后端)更少關心服務端,專注于業務本身。

從廣義來講,Serverless shi無服務器架構,當然,這里指的無服務器不是無需服務器就可以運行,而是用戶無須關注支撐應用服務運行的底層主機。

而從狹義來講,FaaS 承載代碼片段(即函數),可隨時隨地創建、使用、銷毀,無法自帶狀態。所以必須和 BaaS(后端即服務)搭配使用。兩者合在一起,才最終實現了完整行為的 Serverless 服務。

03 Serverless 的優勢

Serverless 總共有三大核心優勢:

  1. 免運維
  2. 省成本
  3. 極致彈性

這里借助下阿里云的介紹來描述下 Serverless 優勢,畢竟這也是所有Serverless產品的核心優勢。

(來源小攻云攻略) Serverless 因為即開即用,無需用戶提前購買,真正意義實現了用戶按需使用資源。且對于研發階段,只需要將自己的代碼部署的代碼倉庫。

(來源《Serverless入門課》)

當有用戶訪問時,觸發了事件才會啟動 Serverless 應用提供服務。打個比方,Serverless 就相當于聲控燈,當有人夜晚走動時才會亮,其他時間,全都是關燈狀態。自然而言也會更省成本。

而極致彈性又從何而來呢?

還是以用戶訪問為例,Serverless 憑什么無需常駐后臺,即開即用。歸根究底,這得益于 Serverless 極快的啟動過程。在過去的云服務器時代,盡量也是彈性按需使用,但是這個都是一個限度。就比如云服務器的啟動時間一般在 1-5 分鐘之間。而在Serverless上,這個啟動時間可以降低到 100 毫秒 到 800 毫秒。而于用戶而言,或者想想你自己,打開一個網頁,1 秒算很快,2 – 3 s 還能接受。

所以,在 Serverless 的極速啟動基礎上,Serverless 也可以真正意義上實現極致彈性,可以在用戶無感知的情況下輕松擴容,無需擔心突發流量。

04 Serverless 解決了什么問題

一場交易,會涉及到三個因素:供給側、交易方式、消費側。對于云計算廠商而言,無論是 AWS 的 EC2,還是阿里云的 ECS,又或者是騰訊云的 CVM。多達百萬計數的服務器瘋狂的消耗著大量資源,而云計算的之所以能夠廉價,在于其規模效應,當資源池達到一定數量級時邊際成本將無限接近于零。

(來源億歐智庫:2019年中國云計算行業發展研究報告)

但是現有物理機在云操作系統下虛擬化成一臺臺云服務器,利用率卻無法達到極致,各種碎片的資源被閑置。

而對于企業而言,一個企業會有著各種不同的應用,其中,80%的服務屬于長尾應用,即大部分時間都沒有流量或者有很少流量的應用。這些中長尾應用不可避免的要常駐后臺,至少要獨占 1 臺虛擬機。

在這里,Serverless 的作用就體現了。

于供給側即云廠商,Serverless 可以讓將閑置碎片化的計算資源進一步虛擬化出計算資源出售。

于消費側即企業,對于大企業而言,可以減少中長尾應用的運營成本。而對于創業者而言,則可以獲得比云服務器更少的 IT 成本。

于交易方式,由云服務器時代的最小計費粒度 1 小時,細化到了最小計費粒度 1s 。

說到底,在企業的競爭博弈中,只有更好的控制成本,才能在博弈中取得優勢,而另外一方,Serverless 能夠很好的幫助企業減少可見的成本,還能更有效率的讓企業快速部署應用上線并提供服務。

當然,在國內,更多的場景還在不斷擴展中,各大云廠商的 Serverless 也基本處于公測階段,未能真正商業規?;?/p>

但是,我相信,在 Serverless 的基礎上,云計算最終會實現了最初的愿望,成為信息時代的“水電煤”。

云計算 “拍了拍” Serverless。

 

作者:Pasca,微信公眾號:蛋蛋團(ID: dandna_tuan),專注技術科普和產品揭秘

本文由 @Pasca 原創發布于人人都是產品經理,未經許可,禁止轉載

題圖來自Unsplash, 基于CC0協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 科普知識點都知道,比較想看樓主作為產品或者運營視角去分享怎么做好serverless這種還沒被大眾接受的概念真正產品落地化

    來自廣東 回復
  2. 老師寫的太好了,可以轉發您的文章嗎

    來自廣東 回復
    1. 一轉到公眾號嗎?

      回復