主頁 >  其他 > 權威指南:Serverless 未來十年發展解讀 — 伯克利分校實驗室分享(下)

權威指南:Serverless 未來十年發展解讀 — 伯克利分校實驗室分享(下)

2020-10-20 17:53:39 其他

編者按

本文整理自 Johann Schleier-Smith 在 ServerlessDays China 的演講,是來自加州大學伯克利分校計算機科學 Riselab 團隊的研究成果,

ServerlessDays 是由全球 Serverless 開發者發起的國際技識訓議,2020 年由騰訊云 Serverless 團隊引入中國,并承辦了首屆 ServerlessDays China 會議,會上 Johann Schleier-Smith 代表伯克利計算機科學 Riselab 實驗室進行了主題發言,

接上篇《權威指南:Serverless 未來十年發展解讀 — 伯克利分校實驗室分享(上)》

Serverless 研究成果和亮點

第三個研究課題主要是 Serverless 檔案系統 —— 狀態性方面的優化,也是非常有價值的一個方向,

下面的圖可以解釋當前 Serverless 計算的狀態共享/存盤模式,當前有兩個層面,在計算層,主要通過 FaaS 提供服務,其特點是實體之間相互隔離,并且只有短暫的狀態性,短暫的狀態性指的是 FaaS 服務運行完畢后,實體銷毀,狀態也隨之銷毀,如果希望永久存盤,則需要持續的寫入到存盤層(例如物件存盤、K-V 存盤等)即 BaaS 服務中,實作狀態資訊的長期存盤和共享,

但當前這樣的模式面臨兩個主要的問題:(26:31)

一方面是延遲問題,也是許多 BaaS 服務目前存在的問題;另一方面,物件存盤或者 K-V 存盤是通過 API 進行服務的,并不能感知到底層的存盤情況,因此在開發應用或遷移時難以信任這些存盤資源(改變了以往的開發使用方式),所以我們的訴求很簡單,是否可以提供類似本地磁盤一樣的存盤能力,區別只是在云端呢?

這就是 Serverless 云函式檔案系統(CFFS, Cloud Function File System)所要提供的能力,該檔案系統有以下幾個特點:

  1. 基于標準 POSIX API 的檔案系統,提供持久化的存盤能力,
  2. CFFS 提供了透明傳輸機制,也就是在函式啟動時,CFFS 也隨之啟動一個傳輸;而當函式銷毀時,這個傳輸會被提交,這樣做可以獲取到函式執行程序中的許多狀態資訊,
  3. 雖然通常情況下傳輸會對性能有影響,但如果能夠積極利用本地狀態和快取,這種方式相比傳統的檔案存盤系統,對性能有很好的提升,

下面是 CFFS 的架構圖,可以看出 CFFS 在云服務商的 FaaS 環境中運行,在前端通過標準的 POSIX API 進行呼叫,后端的存盤系統則利用快取等,專為云函式 FaaS 設計并提供服務,

參考文獻:A File System for
Serverless Computing

第四個研究課題 Cloudburst 也是致力于解決 Serverless 中狀態問題的專案, Cloudburst 更側重于怎樣將 Serverless 應用在狀態敏感、延時敏感的應用場景中,例如社交網路、游戲、機器學習預測等,

Cloudburst 主要基于 Python 環境,能夠低延遲的獲取共享可變狀態(shared mutable state),和 CFFS 類似, Cloudburst 也在函式執行器中利用了資料快取來提升性能,但和 CFFS 不同的是,Cloudburst 可以保證因果一致性(Causal Consistency)來達到更好的性能,

實驗結果上也表明 Cloudburst 有很強的性能優勢,在相同條件下,用了 DynamoDB(K-V 資料庫)服務的 Lambda 函式約有 239 ms 的延遲,但用 Cloudburst 的延遲低于 10 ms,

參考文獻:

  • hydro-project/cloudburst
  • Cloudburst: Stateful Functions-as-a-Service

最后一個研究課題是 Serverless 資料中心,當我們思考服務器的組成時,一般會想到 CPU,記憶體,有時候還有 GPU 和硬碟這些基本硬體,而千千萬萬這些硬體組合在一起,之后進行網路連接,就成了資料中心,像個人電腦、服務器集群等都是通過這樣的方式構建的,

但是從應用層的角度,這樣的組合方式并不是唯一的,所以有一種新的概念叫做分布式集群(distributed datecenter),也叫 Warehouse-scale computer,思路是將同型別的硬體元素(例如 CPU、內容)組合在一起,當應用用到對應的資源時,例如需要 GPU 加速時,才會分配對應的資源,同理,可以用在硬碟或者一些自定義的加速器上面,這個概念類似于將一個資料中心看做一臺計算機,來提升資源的利用率,

針對 Warehouse-scale computer 的硬體開發已經在持續進行中了,因此 Serverless 也應該考慮下在這種集群模式下,怎樣適配和使用這種集群模式,而且這也將對當前針對單機的應用開發模式做出改變,

參考文獻:

  • FireBox: A Hardware Building Block for 2020 Warehouse-Scale Computers
  • FireBox: A Hardware Building Block for the 2020 WSC

Serverless 方向預測

接下來,我將闡述下 Berkeley 對 Serverless 計算未來方向的預測,早在 2009 年,Berkeley 就對云計算的未來做過一次預測,回看當時的分析,發現有些預測是正確的,例如無限大的資源池,無需為前期使用付費等,同時,有一些預測并不那么準確,因為當時的我們并沒有看到云計算將進入第二階段,即 Serverless 階段,

以下是我們對 Serverless 計算的預測:

  1. 特定應用場景及通用場景將會成為使用 Serverless 計算的主流,如下圖所示,云服務商負責的是粉色區域的部分,而用戶只關心粉色區域的上層,在特定應用場景下,你可以在彈性伸縮的平臺中實作特定的操作,例如寫資料庫、實時資料佇列、或者機器學習等,這些場景中,用戶業務代碼需要在遵循平臺限制,例如運行環境、運行時長、沒有 GPU 加速等,當然這些限制也會隨著技術成熟而逐步放寬,從而更好地支持這些場景,

  2. 另一種則是更通用的 Serverless 架構,在這種場景下,你的 FaaS 函式會被其他 BaaS 服務所拓展,例如 Starburst、快取等服務;并且有物件存盤或檔案存盤可以用于長期存盤狀態資訊,之后,在此基礎上,用戶可以自定義一些軟體服務,例如提供 SQL 的能力等,并且將對應的應用運行在上面,從而實作流資料處理、機器學習等各種場景,

通用的 Serverless 幾乎能夠支持任何應用場景,從底層架構上來看,所有能運行在服務器上的場景,都可以被視為通用 Serverless 場景支持,

  1. 我們認為在未來,Serverless 架構比服務器在成本上會更有競爭力,當你用了 serverless 架構時,就已經獲得了高可靠,彈性擴縮容的能力,此外,Serverless 的計費模式會更加精確,資源利用率也將逐步提升,確保做到真正的按需使用和付費,因此相比預留資源,在價格上會更有競爭力,更多的人也會因此選擇 Serverless 架構,

  1. 此外,云服務商會針對機器學習場景做優化,包括性能、效率和可靠性等方面,云服務商會提供一些類似作業流調度,環境配置等能力來實作該場景的支持(例如預置記憶體),通過這些上下游能力,也可以進一步幫助通用場景下的平臺性能得到提升,

  1. 最后,是各類硬體方面的發展,當前云計算已經強依賴 X86 架構,但 Serverless 可以考慮引入新的架構,從而讓用戶或云服務商自行選擇最適合的硬體來處理任務,從而實作更高的利用率和更強的性能,

總結 Summary

首先,我們認為 Serverless 計算是云計算的下一個階段,而 Serverless 最重要的三個特征是:隱藏了服務器的復雜概念、按需付費和彈性伸縮,此外 Serverless 的實作是由 FaaS 和 BaaS 共同組成的(參考上面的經典案例),直觀來說,Serverless 帶來的轉變就像租車到打車一樣,

此外,還分享了幾個當前學術界針對 Serverless 的研究方向,包括效率提升(性能、可用性等)、具體應用的抽象(例如機器學習,資料處理等),和通用層面的抽象(讓 Serverless 支持更加通用的場景),

Serverless 計算可能會改變我們對計算機的看法,擺脫了本機硬體的限制,你可以直接從云端獲取無限的資源,隨取隨用,

One More Thing

立即體驗騰訊云 Serverless Demo,領取 Serverless 新用戶禮包 ?? serverless/start

歡迎訪問:Serverless 中文網!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/182479.html

標籤:其他

上一篇:selenium---Chrome瀏覽器無頁面啟動

下一篇:Python自動化測驗學習(三)— 使用 HTMLTestRunner 生成測驗報告

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more