日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

从零入门Serverless|一文详解Serverless技术选型

發(fā)布時(shí)間:2024/8/23 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从零入门Serverless|一文详解Serverless技术选型 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者 | 李國(guó)強(qiáng)? 阿里云資深產(chǎn)品專家

本文整理自《Serverless 技術(shù)公開課》。關(guān)注“Serverless”公眾號(hào),回復(fù)“入門”,即可獲取 Serverless 系列文章 PPT。

今天來講,在 Serverless 這個(gè)大領(lǐng)域中,不只有函數(shù)計(jì)算這一種產(chǎn)品形態(tài)和應(yīng)用類型,而是面向不同的用戶群體和使用習(xí)慣,都有其各自適用的 Serverless 產(chǎn)品。例如面向函數(shù)的函數(shù)計(jì)算、面向應(yīng)用的 Serverless 應(yīng)用引擎、面向容器的 Serverless Kubernetes,用戶可以根據(jù)自己的使用習(xí)慣、使用場(chǎng)景或者應(yīng)用類型,去選擇使用什么樣的 Serverless 產(chǎn)品。下面通過本文給大家介紹一下,阿里云都有哪些可供大家選擇的 Serverless 產(chǎn)品。

Serverless 產(chǎn)品及分層

眾所周知,最早提出 Serverless 的是 AWS,其在 Serverless 領(lǐng)域的旗艦產(chǎn)品是 function compute。同樣阿里云也有函數(shù)計(jì)算的產(chǎn)品,幫助用戶構(gòu)建 Serverless 函數(shù)。但 Serverless 不僅僅是函數(shù),如下圖所示,其實(shí)用戶會(huì)期望在應(yīng)用、容器等層面也能夠享受到 Serverless 的好處,包括按量付費(fèi)、極致彈性等,這樣也更符合用戶原有的使用習(xí)慣。

在上圖中,大家能夠看到,阿里云針對(duì)函數(shù)、應(yīng)用和容器都推出了對(duì)應(yīng)的 Serverless 產(chǎn)品,用戶可以針對(duì)自己的使用場(chǎng)景選擇不同的產(chǎn)品。

函數(shù)計(jì)算?

1. 函數(shù)計(jì)算介紹

上圖展示了函數(shù)計(jì)算的使用方式。從用戶角度,他需要做的只是編碼,然后把代碼上傳到函數(shù)計(jì)算中。這個(gè)時(shí)候還不會(huì)產(chǎn)生費(fèi)用,只有到被調(diào)用的時(shí)候才有費(fèi)用。調(diào)用的方式可以是產(chǎn)品提供的 API/SDK,也可以通過一些事件源,比如阿里云的 OSS 的事件。比如用戶往 OSS 里的某一個(gè) bucket 上傳了一個(gè)文件,希望這個(gè)文件被自動(dòng)處理;比如上傳一個(gè) zip 包,希望能夠自動(dòng)解壓到另外一個(gè) bucket,這都是很典型的函數(shù)場(chǎng)景。

另外,函數(shù)計(jì)算能夠提供非常好的彈性能力,最終的費(fèi)用是根據(jù)時(shí)長(zhǎng)和內(nèi)存數(shù)進(jìn)行計(jì)費(fèi)的,如果調(diào)用量小的話,只會(huì)有很少的費(fèi)用。并且它在語言方面也非常豐富,常用的 nodejs、php、python、java 都直接支持。同時(shí)提供自定義的運(yùn)行環(huán)境,可以支持任意的可執(zhí)行的語言。

2. 函數(shù)計(jì)算典型場(chǎng)景

從使用場(chǎng)景來說,主要有三類:

  • Web 應(yīng)用:可以是各種語言寫的,這種可以使用 Serverless 框架新編寫的程序,也可以是已有的應(yīng)用。比如小程序后端、或者發(fā)布到 API 市場(chǎng)的 API 后端應(yīng)用等;
  • 對(duì)計(jì)算能力有很強(qiáng)的彈性訴求的應(yīng)用:比如 AI 推理、音視頻處理、文檔轉(zhuǎn)換等;
  • 事件驅(qū)動(dòng)型的應(yīng)用:比如通過其他阿里云產(chǎn)品驅(qū)動(dòng)的場(chǎng)景、Web Hook、定時(shí)任務(wù)等,函數(shù)計(jì)算已經(jīng)與很多產(chǎn)品進(jìn)行了打通,比如對(duì)象存儲(chǔ)、表格存儲(chǔ)、定時(shí)器、CDN、日志服務(wù)、云監(jiān)控等,可以非常快速地組裝出一些業(yè)務(wù)邏輯。

3. 函數(shù)計(jì)算核心競(jìng)爭(zhēng)力

函數(shù)計(jì)算對(duì)客戶的一個(gè)最大的價(jià)值,就是能夠讓用戶只關(guān)注自己的業(yè)務(wù)邏輯開發(fā),完全不需要管理運(yùn)維,諸如計(jì)算資源、網(wǎng)絡(luò)設(shè)置等都不需要關(guān)心。在隔離性上提供 vm 級(jí)別的隔離,保證用戶在運(yùn)行時(shí)的數(shù)據(jù)安全、運(yùn)行時(shí)安全等;在可用性方面默認(rèn)提供 3az 的高可用架構(gòu),保證客戶默認(rèn)就是高可用的最佳實(shí)踐架構(gòu);在彈性方面,可以做到毫秒級(jí)的彈性效率,滿足客戶突發(fā)的流量沖擊;在計(jì)費(fèi)方面也非常靈活,真正按照用戶的請(qǐng)求情況進(jìn)行收費(fèi),也支持對(duì) long run 的應(yīng)用更友好的預(yù)付費(fèi)模式。

Serverless 應(yīng)用引擎

1.?SAE 概述

SAE 是業(yè)內(nèi)首款面向應(yīng)用的 Serverless Paas 平臺(tái)。這個(gè)產(chǎn)品以面向應(yīng)用的視角,幫助用戶在不做任何修改的前提下把存量應(yīng)用上到云端。在資源層,用戶不再需要自己管理和運(yùn)維機(jī)器及集群,只需要關(guān)注自己應(yīng)用所需要使用的規(guī)格以及實(shí)例數(shù),不再需要關(guān)心底層是虛機(jī)還是容器。

SAE 從資源層面提供計(jì)算資源、彈性、隔離性等能力,讓用戶只需要關(guān)注自己的應(yīng)用。在應(yīng)用層,SAE 提供了監(jiān)控、日志、微服務(wù)治理等能力,幫助用戶解決應(yīng)用可觀測(cè)性和治理需求。同時(shí)提供網(wǎng)絡(luò)配置、流量控制能力,提供了和 CICD 良好的集成,用戶可以使用已有 CICD 部署到 SAE,比如 jenkins、云效等,可以說覆蓋了應(yīng)用上云的完整場(chǎng)景。

2.?SAE 典型場(chǎng)景

SAE 有幾個(gè)典型的使用場(chǎng)景,一個(gè)是存量業(yè)務(wù)上云,特別是微服務(wù)、java 應(yīng)用,同時(shí)也支持其他語言的單體應(yīng)用,都能夠通過 SAE 這個(gè)平臺(tái)運(yùn)行在阿里云上,并且不需要做任何代碼的修改。在行業(yè)方面,SAE 特別適合有比較大的流量波動(dòng)的在線業(yè)務(wù),比如電商大促、在線教育等行業(yè)的場(chǎng)景。另外 SAE 作為應(yīng)用平臺(tái)也可以被上層的行業(yè) Saas 所集成,幫助用戶更快地構(gòu)建行業(yè) Saas。

3.?SAE?特性

通過上面的場(chǎng)景介紹,我們可以看到 SAE 除了 Serverless 體驗(yàn)本身所帶來的極致彈性、免運(yùn)維等特性之外,重點(diǎn)在應(yīng)用層給用戶提供全棧的能力,包括對(duì)微服務(wù)的增強(qiáng)支持,以及整合了和應(yīng)用息息相關(guān)的能力,包括配置、監(jiān)控、日志、流量控制等。再加上用戶零代碼的改動(dòng),是企業(yè)在線業(yè)務(wù)平滑上云非常好的選擇。

Serverless?Kubernetes

1.?ASK 概述

另一個(gè)阿里云提供的 Serverless 產(chǎn)品是 Serverless K8s。但是 K8s 怎么還能 Serverless 呢?這就需要先了解一下技術(shù)架構(gòu)的演進(jìn)歷程。

最早的時(shí)候大家都把 Docker 鏡像部署在虛機(jī)里,用戶需要購(gòu)買 ECS,然后部署鏡像,最后是網(wǎng)絡(luò)的一些配置,比如 SLB、EIP 等。在這個(gè)過程中,用戶需要自己完成部署動(dòng)作,擴(kuò)容需要自己重復(fù)上面的動(dòng)作,或者自己構(gòu)建一套自動(dòng)化腳本,相對(duì)來說成本和穩(wěn)定性都比較低。

之后有了 K8s 來幫大家解決容器編排的問題。這種標(biāo)準(zhǔn)化的方式確實(shí)大大提高了大家的生產(chǎn)力。用戶通過使用 deployment、service 等標(biāo)準(zhǔn)的 K8s 的方式進(jìn)行編排,并進(jìn)行部署。但 K8s 的運(yùn)維和管理還是相對(duì)比較復(fù)雜的,技能要求比較高,用戶需要運(yùn)維 ECS 以及通過 ECS 構(gòu)建出來的 K8s。另外一個(gè)痛點(diǎn)時(shí) K8s 集群里的 ECS 是需要預(yù)先購(gòu)買的,如果客戶的負(fù)載有比較大的波動(dòng),就會(huì)出現(xiàn)比較多的資源浪費(fèi)。雖然技術(shù)上也有解決方案,比如 worker node 的彈性,但這對(duì)于初級(jí)用戶來說,還是有比較高的復(fù)雜度。

那有沒有一種方案可以讓用戶既能享受到 K8s 提供的容器編排能力,又能夠不需要關(guān)心 ECS 和 K8s 的運(yùn)維、管理和彈性問題呢?這就是 Serverless K8s 的方案。對(duì)應(yīng)到阿里云的產(chǎn)品就是 ASK。在 ASK 的方案里,用戶創(chuàng)建一個(gè) ASK 集群,但不需要指定任何 ECS 節(jié)點(diǎn),然后通過標(biāo)準(zhǔn)的 K8s 容器編排、deployment 等部署鏡像。ASK 會(huì)根據(jù)用戶的負(fù)載需求,自動(dòng)在底層資源池構(gòu)建需要的 POD 并進(jìn)行彈性伸縮,用戶不再需要關(guān)心容量規(guī)劃、ECS 機(jī)器運(yùn)維、資源限制等 LaaS 層的問題,非常便利。

2. ASK 典型場(chǎng)景

那 ASK 主要用在哪些場(chǎng)景里呢?首先可以用來跑在線業(yè)務(wù),部署模式靈活,可以是 deployment、helm chart 等所有的 K8s 原生模式,特別是能夠很好地應(yīng)對(duì)突發(fā)流量,極致彈性,可以在 30 秒完成 500 個(gè)容器實(shí)例的彈性。這樣的彈性效率,可以很好地支撐大數(shù)據(jù)計(jì)算類的任務(wù),比如 Spark、Presto 等,也可以在需要的時(shí)候即時(shí)獲取資源,支撐 10000 以上 Pod 的規(guī)格,有效降低客戶成本。

另外一個(gè)非常適合的場(chǎng)景是用來構(gòu)建隨需啟動(dòng)的構(gòu)建任務(wù),比如在 ASK 中運(yùn)行 jenkins、Gitlab-Runner 等。在有構(gòu)建任務(wù)的時(shí)候,即時(shí)啟動(dòng)。沒有任務(wù)的時(shí)候 0 消費(fèi),成本做到最低。這里只是列出了一些例子的場(chǎng)景,實(shí)際上基于 ASK 的這個(gè)特性,用戶可以運(yùn)行很多 K8s 原生的需要極致彈性的工作負(fù)載。

3. ASK 特性

ASK 完全容器部署,通過容器進(jìn)行隔離。在使用的過程中,用戶無需運(yùn)維 ECS 或者 K8s 集群,也不需要考慮集群升級(jí)、容量規(guī)劃、OS 及系統(tǒng)軟件問題等事情,理論上可以提供無限的彈性容量。因?yàn)槭峭耆凑帐褂昧窟M(jìn)行收費(fèi),所以就不需要為限制資源付費(fèi)。

總結(jié)

總結(jié)一下,可以看到阿里云今天在 Serverless 領(lǐng)域有非常多樣的產(chǎn)品,既有面向函數(shù)的函數(shù)計(jì)算,用戶可以只關(guān)注代碼,快速開發(fā)交付;也有面向應(yīng)用的 Serverless 應(yīng)用引擎,讓用戶更關(guān)注應(yīng)用視角,并且提供了圍繞應(yīng)用的一系列能力,包括監(jiān)控、日志、流量等能力的集成;對(duì)于更習(xí)慣 K8s 生態(tài)的用戶,ASK 讓用戶在不改變當(dāng)前 K8s 使用習(xí)慣的前提下,也能享受到 Serverless 的優(yōu)勢(shì)。多樣的產(chǎn)品,在滿足不同用戶訴求的同時(shí),也使用戶體驗(yàn)到了 Serverless 的免運(yùn)維、極致彈性、按量付費(fèi)等優(yōu)勢(shì)。

課程推薦

為了更多開發(fā)者能夠享受到 Serverless 帶來的紅利,這一次,我們集結(jié)了 10+ 位阿里巴巴 Serverless 領(lǐng)域技術(shù)專家,打造出最適合開發(fā)者入門的 Serverless 公開課,讓你即學(xué)即用,輕松擁抱云計(jì)算的新范式——Serverless。

點(diǎn)擊即可免費(fèi)觀看課程:https://developer.aliyun.com/learning/roadmap/serverless

“阿里巴巴云原生關(guān)注微服務(wù)、Serverless、容器、Service Mesh 等技術(shù)領(lǐng)域、聚焦云原生流行技術(shù)趨勢(shì)、云原生大規(guī)模的落地實(shí)踐,做最懂云原生開發(fā)者的公眾號(hào)?!?/p>

原文鏈接
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。

總結(jié)

以上是生活随笔為你收集整理的从零入门Serverless|一文详解Serverless技术选型的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。