免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

京東科技開發者發表於2020-05-19

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

課程概要
雲端計算的出現改變了傳統IT架構和運維方式,容器、微服務為代表的技術在各個層面不斷升級雲服務的技術能力,它們在應用和環境中的很多通用能力變成了一種服務。
在雲原生時代,應用開發的新理念和新技術層出不窮,Serverless 也稱為了熱門選擇,隨著這些技術的不斷髮展,能讓開發者更加心無旁騖聚焦業務開發,無需再去操心雲端計算的基礎底層概念,甚至以近乎無感的方式獲得雲端計算的幫助,提升效率及產出。

據Gartner 報告表明,到2020年,全球20%的企業將採用Serverless 技術部署。同時各大企業都在Serverless領域進行探索。Serverless 從底層進行技術變革計算資源的形態,為企業的軟體架構設計和應用服務部署引入創新的技術設計思路。

4月 28 日,京東雲與AI事業部雲產品研發部架構師張金柱,帶來了 《六週玩轉雲原生》終結篇:Serverless 架構設計與落地應用。從雲原生的定義開始,漸進式詳解了Serverless 對於雲原生的價值、挑戰,深入探討Serverless 的架構設計模式與落地應用。

以下是精華分享內容,我們們一起來看看

六週玩轉雲原生

Serverless 架構設計與落地應用

— 京東雲與AI產品研發部架構師 張金柱 —

1 從雲原生說起

在瞭解 Serverless 之前,張金柱老師先帶大家回顧了什麼是雲原生(Cloud Native)。簡單來說,Cloud Native 是“一系列架構、研發流程、團隊文化的最佳實踐組合。”

也就是說,CloudNative 不是某一種技術或最佳架構方式,而是一種集合,一般情況下,它與雲有強相關,包括公有云、私有云,包括京東、BAT 內部也有一些雲的架構,雲的基礎設施,在此基礎上搭建一整套研發流程和團隊的工作方式。

主要包含以下技術點:

1、彈性,過去單體軟體架構或私有機房時,流行託管或採購物理機,資源有限,隨著業務流量增加,擴充套件性很差。在有云的情況下,利用其規模、基礎設施更容易做到彈性擴容和縮容;

2、多租戶;

3、自服務,大家可以像購買商品一樣去透過 API 便捷地去購買雲上的資源;

4、基於API協作,如今雲上也整合了 AI 等各種基於 API 方式提供的服務,大家可以更便捷地去使用;

5、分散式;

6、反脆弱性,網際網路系統最擔心當機,而透過雲的能力,我們可以引入高可用的架構、進行破壞性測試等;

7、按需申請和計費,雲把 IT 的基礎設施商品化,讓大家能夠根據自己的需求去實時申請和釋放。

透過下圖可以清楚瞭解到,在架構上雲原生上是如何去落地的。雲提供敏捷開發基礎設施與公共服務,配合微服務達到可擴充套件性高、可用性高、效能強、一致性的雲原生架構。

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

雲原生可以理解為多個階段的進化過程:

第一級:單體軟體架構,一套系統解決了所有的問題,但這時它的優缺點都非常明顯,雖然架構簡單了,但同時也牽一髮則動全身,如只想修改一點東西就導致整個服務停掉。

第二級:是由微服務的架構帶來的升級。主要是讓大家做到關注點分離、減少團隊溝通、提高效率。

第三級:雲結合微服務框架帶來的改變。根據Gartner最新報告,以後會有云資源管理運維的職位,主要將各家的雲的資源和服務透過 API整合起來,提供給上層的業務開發者。

第四級:就是今天的重點,Serverless的幾個主要特色有——1)免運維、甚至結合 AI 能力做運維的提升;2)彈性伸縮;3)按需付費;4)高度自動化和自愈能力等。

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

2 Serverless是什麼

1、對Serverless的定義與理解

UCBerkley 曾對Serverless做過一個研究,主要強調了 Serverless 不是FaaS。各家公有云上都會有一些函式服務的產品,但這只是一個Serverless在計算層面上的抽象和實現,Serverless還有大量的服務,如 AWS 的 S3、京東的物件儲存、KV儲存等。Serverless 給大家帶來的是便捷的申請,按需付費。

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

雲從某種程度來說,是將大家的技術集中,由專人負責,並且將資料打通形成平臺。如今雲概念的發展相當於真正地給 Serverless 插上了飛翔的翅膀,主要因為Serverless脫胎於雲時代架構的思想,Serverless是隻屬於雲時代的。雲的基礎設施層(IaaS),它可以為Serverless的彈性提供基礎,讓「彈性」有了真正落地的可能。

不僅如此,回顧雲端計算的歷程,從早期的虛擬化(網路、計算、儲存)、到 PaaS、SaaS,到如今Serverless的出現,這是雲端計算進入深水期的體現。對於應用開發者而言,開發模式是否有變更、效率是否有提高、成本是否有降低、這些需求是一直以來都存在的,而Serverless是符合這個階段的,它直面了這一些問題。

特別強調的一點是,Serverless不等於FaaS,它提供的是彈性的計算服務,FaaS只是一種計算資源的抽象方式。

2、Serverless的常見落地場景

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

Serverless的常見應用場景,可以分為以下幾類:

1)後端應用

隨著 App 移動開發的興起,大量 Server 端和移動端已經做了很好的解耦,後端本質上是一個 Web 服務,包括 IoT 的後端。比如智慧家電,每時每刻都在產生資料,並將資料上傳到雲端。所以對於海量物聯網裝置產生的海量資料,只有具備彈效能力的系統才能滿足其需求。

2)事件驅動的場景

這類場景包括檔案處理、流資料處理、ETL 等。它產生的事件是可以跟函式服務繫結的,完全可以由佇列服務配合去實現。在Serverless的場景下,只要有一個事件,就可以去驅動任務的調起。

3)AI 應用類

舉個真實的案例,有一家做智慧客服的公司,雖然夜裡諮詢量不高,但也會配備一些運維同事值班,因為智慧客服一旦出現問題,就需要有運維的干預。而使用Serverless架構就可以把運維的事情完全託給雲廠商,完全不用擔心夜裡擴容或故障報警。

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

值得注意的是,BaaS和PaaS需要區別開。BaaS主要是以API的方式給使用者提供服務,並且這些服務是一個使用者架構裡面通用的功能;而PaaS概念很廣,包括資料庫、中介軟體、Web Server等,都可以囊括進來。因此,可以簡單的理解為BaaS是PaaS的子集。

3 Serverless應用場景

目前,Serverless還是一個藍海領域,相關標準還沒有統一。但各大廠商都在積極推動相關的規範和運營標準的統一化制定。

Serverless的常見三層架構:客戶端、服務端、資料。所有的事情都可以在這裡去處理,包括購買、搜尋、使用者管理等。

下圖展示了電商場景下,Serverless的架構圖:

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

最後再說一說常見的Serverless的工具,主要包括公有云、私有云,以及對Serverless平臺的包裝工具。開發者可以基於Kubernetes搭建Serverless架構。

4 Serverless的未來

說了那麼多Serverless的優點,其實Serverless的未來,還是有不少挑戰的。主要包括以下幾個方面。

第一,首先它忽略了時效性。過去的 Web服務可能是一個後端,使用者請求處理完了就可以返回;但在Serverless架構下,使用者請求的路徑變長,導致服務響應時間變慢。

第二,它阻礙了分散式系統的開發。在Serverless中,有一些事情,如選舉、資料一致性、事務等,無法很好地解決。導致一些必須透過分散式架構來解決的需求,無法實現。

第三,使用者思想上沒有完全接受。這一點主要體現在對安全的擔憂,將自己的資料全都交出去,還是不能完全放心。

最後,IaaS層的挑戰,在Serverless下,我們希望容器能做到啟動速度越來越快,效能損耗越來越小,這對IaaS層提出了更高的挑戰。

雖然挑戰多多,但隨著雲基礎設施的日臻成熟,Serverless也將應該更好的發展。總結起來一句話:未來,已來!


Serverless本身是一種架構思想,要站在架構的角度去探討。不僅如此,初學者更要主動多實操,真正體驗一下Serverless到底給大家帶來多少便利和開發上的效率提升。

雲原生的時代已來,而你,也將成為這個新時代的構建者之一!

無論是學習哪一種新的技術和理念,最重要的是能「學以致用」,在本次課程中,張金柱老師還為大家佈置了課後作業,許多同學雖然是第一次上手容器,也能交出了令人滿意的作業,並且在學習群裡領取到了超實用的雲資源包+硬核雲原生乾貨資料+往期課程影片PPT/PDF,收穫頗豐!

點選【 閱讀 】獲取更多相關課程影片&實操練習!

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?

免運維、彈性伸縮、按需付費...Serverless還有多少驚喜是我不知道的?


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69912185/viewspace-2693100/,如需轉載,請註明出處,否則將追究法律責任。

相關文章