溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用ServerLess實現云原生

發布時間:2021-10-12 11:49:56 來源:億速云 閱讀:171 作者:柒染 欄目:云計算

這篇文章將為大家詳細講解有關怎么使用ServerLess實現云原生,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

筆者有幸經歷了 IaaS(OS)、CaaS(Container),在這兩年又聽到了 FaaS(Funtion),這也是運維開發領域里的第三個階段了吧,今天我將從一個不懂得開發的系統工程師視角以及結合之前的幾篇系列文章為各位詮釋這個概念。

本文來自 Serverless 社區用戶「StatLee」投稿

一、簡述

一開始聽到 ServerLess 我以為是類似于 VPS(建站主機)亦或者是 VM、Container 之類的具備完整 OS 或半完整 OS 生態的一個全新開發方式,后來發現我完全理解錯了

那么 FaaS(ServerLess 為代表的的 Funtion As A Service)就是把 SaaS 再進行精細化拆分。

傳統以為 Application 就是業務的最終形態,可是隨著以開發領域為首的「微服務」及運維領域為首的「SRE/DevOps」理念出來后,傳統的業務運維明顯已經不能滿足新一代業務的需求,為了更貼合這些新的需求,實現:

  • 模塊拆分化(即一個功能作為一個模塊,而非一個業務作為一個模塊)

  • 最小顆?;兏捶謱幼兏?,變更時通過合理調度時變更間隔縮短,實現快速迭代)的目的

云廠商最終在以往的「最終形態」上又拆分了 Function 出來,多個 Function 再組成 Application,除了業務上的好處,這樣做的好處還可以支持將 Function 拆分單獨作為某個服務通過簡單的加殼(API 化)提供給外部調用,從商業角度講,這樣的模式能夠給 Application 本身創造的價值之外提供了更多的細分變現領域。

所以,為什么 ServerLess 這么火(至少表面看),就是因為 ServerLess 是上述所說 FaaS 的最佳體現。

二、實操

  1. 我們開始創建今天的主角,ServerLess(python 版本隨自身業務需求而變)創建一個云函數:

創建 SCF(云函數,ServerLess)

從云函數的功能上來看,與騰訊云的功能整合度還是比較高的,在規劃上筆者建議通過私有網絡來構造云函數應用。

  1. 對接 cvm apiv3 sdk來實現拉取cvm列表,首先將用到的SDK文件放在云函數所在目錄下。

  2. 通過 VSCode 插件一鍵部署。這里推薦使用 VSCode 來作為主 IDE,無論是構造 API 的 Django 所用的 TKE 可以通過 Remote Development 插件來進行遠程開發,還是 ServerLess 也可以通過騰訊云提供的 ServerLess ToolKit(當然大部分提供 ServerLess 的云廠商都有提供 Toolkit,安裝 ToolKit 時主要不要在 Remote IDE 窗口下點擊,否則就變成為遠端安裝了)進行開發,基本上做到完全體驗一致。

  3. 通過 CVM SDK 獲取 ins-id、內網 IP,再調用 Django 構造的接口進行傳參。

  4. 結果調用成功添加數據

至此,實操完成,這樣相當把后端一個「同步信息」的接口搬上了 ServerLess

三、場景

如實驗所述,ServerLess 只能是一個類似于「轉發器」的玩意嗎?并不是的,除了業務模塊是處于「中間(轉發、同步)」的模塊類型之外,其實 ServerLess 也是可以結合其他產品來實現對外輸出功能的。

本身 ServerLess 是沒有對外發布能力的,怎么理解呢?就是一般運維同學上手一看,這玩意兒為什么連個 ip 都沒有,域名哪里定義的,端口又在哪里,如何定義協議類型?

實際上 ServerLess 確實這些都沒有,因為如簡述所說,這是一個細?;街恍枰P注其上 App 中的某個 Function 的一個產品,所以 Function 之下的所有包括 OS、網絡、App 都是不具備定制化的。

雖然 ServerLess 本身沒有對外發布能力,但是結合 API 網關就不是這回事兒了,當 ServerLess 遇到 API 網關,通常云廠商是支持 ServerLess 添加(或叫注冊)到API網關的,這就相當于你可以借 API 網關的「力」來使 ServerLess 實現對外發布的功能。

ServerLess 的開發模式業界已經很多公司采用,相比于還在使用傳統環境(OS、中間件、選擇應用語言、構建數據層、前后端)來說:

  1. 運維壓力小了很多,因為只需要專注在 ServerLess 本身的運行參數以及架構上的調整、運維,而不再需要關注 Function 以下的運維難點;

  2. 開發人員由于 ServerLess 一般由云廠商提供全鏈路的整合,加上 IDE 插件的支持基本上全程實現云上開發,靈活的版本、環境也可以保證發布出現問題的幾率最小化,同時開發職能的交叉度降到最低,開發人員之間的干擾依賴降低;

  3. 對于公司的商業模式來說,像擁有大量訪問量、市場受眾的企業客戶不單單可以在業務上實現盈利,某些業務系統模塊的優勢也可以借助 ServerLess 拆分出來實現內部IT支撐系統的變現。

ServerLess 也存在一些問題,比如由于 ServerLess 基本上是依托在云廠商之上,對于有混合云的場景,對于S2S 的鏈接質量要求更高,當然這些在 ServerLess 的不斷優化迭代情況下會越來越順暢,所以,無論是 Dev 還是 Ops,擁抱并享受 ServerLess 吧。

關于怎么使用ServerLess實現云原生就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女