《代碼英雄》第二季(7):無伺服器
本文是《代碼英雄》系列播客第二季(7):無伺服器的音頻腳本。
導語: 無伺服器Serverless到底意味著什麼?當然,總得有伺服器存在 —— 構建網路的基本架構不會改變。不過在將伺服器交給一小部分人運維之後,開發者們會發生什麼變化呢?
無伺服器編程讓初學者們可以更加輕鬆簡單地部署自己的應用程序,讓工作更有效率,這是它的優點。Andrea Passwater 跟我們分享了抽象底層架構會給我們帶來多大的便利。不過凡事必有代價,無伺服器化也有很多問題。Rodric Rabbah 解釋了無伺服器意味著你將部署和回應問題的能力拱手獻出 —— 這就是為什麼他幫助創建了 Apache OpenWhisk,這是一個開源的無服務環境框架,同時 Himanshu Pant 也來分享了他對於何時應該使用無伺服器服務的觀點。
無伺服器編程應該是為開發者們 賦能授權 的。我們也應該對於全局場景保持關注 —— 儘管我們精簡了我們的工具箱。
00:00:03 - Al Gore 檔案:
現如今,當然了,在全美乃至全世界,互聯網正在徹頭徹尾地改變著我們的生活。
00:00:13 - Saron Yitbarek:
那是 1998 年。 Google 才剛剛僱佣了它的第一名員工,副總統 Al Gore 在接受媒體採訪。
00:00:22 - Al Gore 檔案:
這項技術還處於起步階段。當我和 比爾·柯林頓 總統入主白宮時,只有 50 個網站。現在看看,我在生日那天收到了一束虛擬鮮花。
00:00:37 - Saron Yitbarek:
好的。我已經感覺到你的眉毛皺起了。為什麼我要向你展現某些 20 年前的互聯網史?這是因為我想要提醒你,互聯網的基礎仍然是相同的。
00:00:51:
當然,現在有不止 50 個站點了,我知道。但是,我們仍然在發送虛擬鮮花。從開發人員的角度來看,如果你將我們所有的驚人進步剝離開來,你得到的仍然是相同的「 客戶端 - 伺服器 」(C/S)模型,這就是一切的開始。一個提供了分散式網路的客戶端 - 伺服器模型。
00:01:16:
如今,開發人員談論了很多有關 無伺服器 的問題,這聽起來像是 Al Gore 談到的客戶端 - 伺服器模型被廢棄了。而且,如果我們不小心,我們能夠抽象出太多的基礎架構,以至於忘記了仍然有伺服器在那裡做著它們的工作。
00:01:37:
但是,無伺服器真的意味著沒有伺服器嗎?真的嗎?還是開發人員與伺服器之間的關係正在變化?在這一集中,我們將與來自世界各地的人們交談,以探索這種被稱為「 無伺服器 」的東西。
00:01:54:
我是 Saron Yitbarek,這裡是《代碼英雄》,一檔來自紅帽的原創播客節目。
00:02:03 - Andrea Passwater:
你知道無線網路在某些地方還有線纜嗎?
00:02:06 - Saron Yitbarek:
Andrea Passwater 在一家名為 …… 嗯…… 「無伺服器」 的公司工作。他們創建了一款流行的開源框架來開發無伺服器應用程序。Andrea 注意到了各個組織是多麼渴望抽象化基礎架構的方法,而這正是神奇的「無伺服器」一詞始終給予人希望的地方。
00:02:28 - Andrea Passwater:
我認為這一術語主要是為了傳達這樣一個事實,即如果你是從事無伺服器應用方面工作的開發人員,你不必考慮那些伺服器。你只需要寫代碼並將代碼部署到雲提供商即可,而不必擔心管理。這就是無伺服器的真正含義。
00:02:49 - Saron Yitbarek:
對於 Andrea 來說,無伺服器的吸引力很明顯。
00:02:53 - Andrea Passwater:
倘若你以無伺服器的方式開發應用程序,則可以不必去考慮部署和維護該應用程序的日常工作。這意味著你可以專註於它的商業價值,你可以專註於發揮創造力。
00:03:12 - Saron Yitbarek:
而無伺服器的另一大好處是,你不太可能發現自己在重複造輪子。
00:03:18 - Andrea Passwater:
當有像 Auth0 這樣可以直接使用的服務存在時,為什麼要創建自己的身份驗證方法呢?歸根結底,無伺服器就是為開發人員提供機會,使得他們能夠更加輕鬆快速地構建起能把他們腦子裡的所有的主意帶到世界上的程序。
00:03:41 - Saron Yitbarek:
我明白了!
00:02:27:
想像一下,你拿了滿手的東西,正跌跌撞撞地走向一扇門。這扇門滑開了,以簡單、友好……
00:03:50:
(讓我來說)
00:03:51:
……的方式。這就是無伺服器。它為你打開了大門,使得開發工作不再那麼繁瑣。事實上,隨著各個組織趨向於混合雲環境,以及無伺服器運動的發展,開發的障礙正在消失。
00:04:09:
Andrea 聽說過很多有關非開發人員進行開發的話題。
00:04:15 - Andrea Passwater:
這是傳統上認為自己寫不了代碼,而現如今由於無伺服器而得以投身於軟體工程的人的故事,並且能夠開發這些使得他們自己的工作流程和類似的東西自動化的工具。這與你你做什麼工作都沒關係。
00:04:31:
你在工作中要做的一些事情是如此的呆板無聊,比如你每天都在做的例行事情,和那些你會想「難道計算機不能為我做這件事嗎?」的事情。我開始有了這種感覺的時候,我碰巧在一家名為「無伺服器」的公司工作,他們像這樣:「你意識到我們製作的產品可以為你提供幫助,對嗎?」
00:04:50 - Saron Yitbarek:
Andrea 認為,不久之後,許多從未將自己視為開發人員的人將意識到他們能夠自己構建簡單的應用程序,基本上免費。
00:05:02 - Andrea Passwater:
藉助 Lambda,我從不需要為自己製作的任何小型應用程序付費。我可以讓這些機器人為我做一部分工作,是的,我可以提高工作效率。但是,我也不必再做這些無聊的工作了。我可以做些更有趣的事情。
00:05:17 - Saron Yitbarek:
即使是對於專業開發人員來說,這種自動門效果在滿手雜物的世界裡也是很誘人的。
00:05:25 - Andrea Passwater:
我認為人們對於能夠讓一兩個人的團隊,在短時間內就讓原型工作起來很感興趣。在幾天時間內,他們就可以啟動並運行原型。我認為這使得人們開始意識到,他們可以專註於驅動他們的應用、產品和公司中的商業價值的部分。這非常讓人興奮,他們可以專註於商業價值。
00:05:54 - Saron Yitbarek:
我要再拋出一個術語給你。準備好了嗎? 功能即服務 (FaaS)。就像是 AWS Lambda 或 Apache OpenWhisk 之類的無伺服器產品。「功能即服務」意味著,只有在被觸發時程序才會執行某個功能,這效率更高。
00:06:15:
此外,這讓我對計算能力和運行時間的擔心少了很多。最終,無伺服器可能會成為一個相當不錯的基礎配置。事實上,有些人甚至開始懷疑,我們是否要完全使用無伺服器?它可以替代容器嗎?
00:06:34 - Michael Hausenblas:
我理解這這種想法。
00:06:35 - Saron Yitbarek:
Michael Hausenblas 是 Red Hat OpenShift 團隊的開發倡導者。
00:06:41 - Michael Hausenblas:
如果你看一下我們現在擁有的這些東西,包括 OpenShift 和 Cloud Foundry 和一些其他東西,你實質上就擁有了抽象化。基本上,Heroku 或多或少地傾向於向這個想法。對嗎?這是非常簡單的方式,無需擔心程序會如何運行,無需擔心它是什麼樣的。只需要給我們代碼,我們來處理剩下的工作。
00:07:03 - Saron Yitbarek:
是的。聽起來相當不錯。這聽起來有點兒像是夢想中的「 無運維 」環境,一切都自動化並且抽象化了,就像是開發者版本的極簡主義室內設計。很棒、很乾凈的界面。
00:07:21:
但是, Michael 想要讓你了解你一些現實情況。
00:07:25 - Michael Hausenblas:
沒有運維!是嗎?你知道,它只是神奇地以某種方式消失。你可以在 HackerNews 和 Twitter 以及其他任何地方看到這些笑話。無伺服器?當然有伺服器!我知道,當然有。而且也肯定有運維。
00:07:39:
總得有人去做這些,總得有人去架設伺服器、給操作系統打補丁、去創建容器鏡像,因為,你猜猜這些功能會在哪裡執行?當然是在某種計算機上。
00:07:54 - Saron Yitbarek:
這不是零和博弈。功能即服務無法直接取代容器,而是在工具箱中增加了一個工具。我還有更多的事情要告訴你。通過使用這種新工具,轉變成無伺服器並不只是意味著運維就是其他人的事情,你仍然需要自己考慮自己的運維。
00:08:14 - Michael Hausenblas:
你會看到在基礎架構側有一點運維工作。但是,也有一點是開發人員的事情。如果你處在一個極端情況之下,比如說使用 Lambda,那麼你是沒有任何任何類型的管理員許可權的,對吧?
00:08:29:
你不能簡單地致電或是簡訊給一名基礎架構管理員。顯然,你組織之中的某一個人就必須得做這件事。但是,我擔心許多組織只看到了它是如此簡單而便宜。我們無需動這個,還有這個、這個,然後忘記了誰在待命,誰是真正地在待命?你對此有什麼策略嗎?
00:08:52:
如果沒有的話,那麼你可能會想要在進行之前,先制定一個策略。
00:09:00 - Saron Yitbarek:
需要有人處於待命狀態。即使選擇了「無伺服器」,你仍然需要在頭腦中縈繞更大的場景,你仍然需要讓你的運維有序進行。
00:09:24:
在我早先時候拋出那個「功能即服務」術語時,你是不是有過些許畏縮?過去,基於雲的開發為我們帶來了大量的 「xx 即服務」的術語。我們有基礎架構即服務(IaaS)、平台即服務(PaaS)、軟體即服務(SaaS)、數據即服務(DaaS)、資料庫即服務(DBaaS) …… 等等。
00:09:48:
如果你難以理解它們的不同,那你並不孤單。這就是我們找來了 Himanshu Pant 的原因。他是位於印度德里的蘇格蘭皇家銀行的技術主管。他花了多年時間來分析其中的差異。
00:10:04 - Himanshu Pant:
這些其他的計算範例在名稱上和無伺服器聽起來是如此的相似,以至於人們往往會忘記,或者困惑於為什麼沒有將它們稱之為無伺服器,或者為什麼這個被稱為無伺服器。
00:10:20 - Saron Yitbarek:
因此,無伺服器與容器不同,無伺服器也不是平台即服務。但是 Himanshu 希望將其明確一下。功能即服務能夠提供什麼?又不能提供什麼?
00:10:35:
他與我們分享了兩件軼事,有兩次他弄清楚了什麼時候該使用無伺服器,什麼時候應該放棄。第一次來自一個 24 小時黑客馬拉松。 Himanshu 當時正試圖開發一個聊天機器人。
00:10:49 - Himanshu Pant:
有各種各樣的指標會影響它的選擇。例如邏輯覆蓋率、可能產生的成本以及可伸縮性。而我選擇在無伺服器環境下完成這項工作。
00:11:04:
當我在開發它的時候,我意識到成本是一個層面,而這確實是我所青睞的技能。因此,即使其他所有的參與者都有更好的……我想說的是,覆蓋率,或者說是邏輯覆蓋率。這裡講的是 NLP 語境或其場景。
00:11:19:
但是,就成本和可伸縮性而言,我是手操勝券的,因為藉助無伺服器,這完全取決於人們在該聊天機器人上所進行調用的次數,並相應的觸發該功能。這是一個我十分樂意採用無伺服器的用例,因為成本 —— 沒有成本。以及更快的開發時間,而且老實說,當時還並不完全是生產規模級別的工作負載。
00:11:45:
我可以使用平台上的某些新興工具。這對我而言是一次勝利。
00:11:52 - Saron Yitbarek:
很好。那時無伺服器才有了意義。但是,在 Himanshu 目前供職的銀行里,人們正在將他們的系統從舊版遷移到雲端。而這提出了不同的目標。
00:12:07 - Himanshu Pant:
我們正在嘗試查看哪些工作負載適用於哪些範例。比如 IaaS、BaaS、FaaS,這顯然是屬於企業領域的。你要看到這些方面,比如說第一,可靠的供應商難以尋找,以及第二,該技術應該得到廣泛的驗證。這對於像是銀行業這樣的規避風險的行業而言更是如此。
00:12:30:
這就是平台即服務(PaaS),但是仍然需要更好的證明、更好的功能,以及它們比傳統工具更優越的地方。
00:12:40 - Saron Yitbarek:
Himanshu 正在研究自己的需求以及他自己的舒適區,並且研究哪些工作負載在哪種雲計算規範中是有意義的。
00:12:49 - Himanshu Pant:
假設某個聽眾在一家貿易商店工作,他想構建某種東西,比如說一個入口。對於他或者她來說,無伺服器可能並不是真正合適的選擇,因為在那種在特定機器的應用程序中,延遲可能是不該出現的。
00:13:05 - Saron Yitbarek:
歸根結底,這是一種有節制的做法,而不是將所有東西都丟進一個桶里。當我們思索哪一種基於雲的架構是真正我們所想要做的工作時,還有一件事情需要考慮。所有這些抽象的東西,所有解放你雙手的東西,最終如何改變的不僅僅是我們的工作方式,還改變了完成工作本身。
00:13:31:
抽象掉一部分工作負載可能意味著更少的自定義選項。想像一下你購買的一輛車。它能工作,它能開。但是接著想像一下你自己組裝的一輛車,這輛車會按照你決定的方式工作。
00:13:48 - Rania Khalaf:
這是有代價的。
00:13:50 - Saron Yitbarek:
Rania Khalaf 是 IBM 研究部門的 AI 工程總監。
00:13:56 - Rania Khalaf:
在使用這些無伺服器應用程序的過程中,你可能無法完全控制所有正在發生的事情。你無法控制全盤計劃,或是程序何時何地運行。
00:14:06 - Saron Yitbarek:
這是一種權衡,對嗎?當你使用無伺服器時,細粒度控制可能會失誤。
00:14:13 - Rania Khalaf:
它對於終端用戶而言,抽象化了如此之多的東西,以至於你想要擁有更多的控制權、不同的規劃、更多的檢查與平衡、功能可以運行多長時間的不同值,等等等等。那麼,如果你真的希望能夠進入系統並修補,也許你可以創建你自己的部署環境。
00:14:32 - Saron Yitbarek:
不過,這將需要一些新東西,一類新的無伺服器環境,開源社區已經在為自己打造了它。Rania 和她的 IBM 團隊參與了該運動。
00:14:44 - Rania Khalaf:
我們首先研究是一種語言……它基本上是 JavaScript 的擴展,可以讓你創建這些多線程交互服務的組合,以此作為起點,為你提供一種更加輕量級服務的方式。大約在同一時間,雲和微服務以及平台即服務開始真正興起。
00:15:08:
僅僅是將這兩種趨勢結合起來,就可以用可能來自於你,也可能來自其他人的許多小部件,構建更加高階的功能。
00:15:18 - Saron Yitbarek:
Rania 和她的團隊正在構建 Apache OpenWhisk,一款開源的功能平台。
00:15:23 - Rania Khalaf:
對於 OpenWhisk,我們從一開始就開源了。其中很大的原因是,為了讓社區和我們一起參與進來。但是同時也是為了揭掉外包裝,將控制權交給想要運行自己的無伺服器計算環境的人們,以便他們能夠根據自己的需求對其進行自定義,也許將它們置身於自己的控制之中,看看它實際上是如何運行的,以對其進行更好的控制。
00:15:54:
而且,我們還可以提供更加精細的控制,如果僅僅是普通服務,人們就不會有這種控制。
00:16:03 - Saron Yitbarek:
將控制權交還給想要運行自己的無伺服器運行環境的人。這是下一階段的無伺服器。加入 OpenWhisk,你將獲得像是 Fission 和 Gestalt 之類的其它開源平台。我們開始看到無伺服器領域正在演變得比原先更具適應性,而且功能更為強大。
00:16:31:
為了真正了解為什麼開源版的無伺服器很重要,我與 OpenWhisk 的創始人之一進行了談話。
00:16:39:
嗨,Rodric。最近好嗎?
00:16:40 - Rodric Rabbah:
很好。你好嗎?謝謝你邀請我參與節目。
00:16:42 - Saron Yitbarek:
Rodric Rabbah 是構思並創立 OpenWhisk 的三位開發者之一。以下是我們的談話。
00:16:54 - Rodric Rabbah:
別人可能會很困惑,也可能會竊笑,因為人們可能會想:「倘若沒有伺服器,你要怎麼做計算呢?」
00:17:02 - Saron Yitbarek:
是的。伺服器就在某處,只是我不必去費心考慮它。
00:17:05 - Rodric Rabbah:
完全正確。這就是這個模式的真正美妙之處。當你開始以無伺服器的方式進行開發時,你就再也不想回到過去了。你知道的,如今我已經置身其中接近 4 年了,並且已經開發了一些達到生產質量的應用程序。
00:17:19:
這是我如今惟一的開發方式。如果你告訴我必須要配置一台計算機並且安裝操作系統,這對我而言完完全全是陌生的。我甚至都不確定我是不是還知道該怎麼做。
00:17:29 - Saron Yitbarek:
是的。當你這樣說的時候,聽起來像是減輕了很大的負擔。你知道嗎?當最初聽說無伺服器時,至少我會想:「夥計,我必須要去學習的事又多了一件。」
00:17:38:
但是,當你這樣說的時候,聽起來不錯。
00:17:41 - Rodric Rabbah:
這確實聽起來很棒。然而,你應該已經意識到你必須要從這幻想的氣泡中抽出一點兒空氣。它不是萬能葯。
00:17:50 - Saron Yitbarek:
有哪些令人驚訝的風險或問題是人們在起步時可能沒有看到或意識到的呢?
00:17:58 - Rodric Rabbah:
我認為缺乏透明度可能是最大的問題。這有點兒讓我想起了新語言問世時出現的,那些提高了計算機抽象水平的技術。在當今的無伺服器環境中,這是一種類似的令人震驚的效果。
00:18:16:
在這個過程中,你通常會寫一個功能,然後只需部署這個功能即可。它可以立即運行,比如在 web 上作為 APIN 點。它可以大規模伸縮。我的意思是你無需自己做任何工作即可運行數千個實例。
00:18:32:
但是,倘若哪裡出了問題,那應該如何調試呢?或者我實際上是想要檢查我的功能失敗的上下文環境。通常,這些功能在進程內運行,與你隔離 —— 你甚至無法登錄計算機查看你的代碼在何處運行。它們可能在封閉的容器環境之中運行,你不知道裡面有什麼。
00:18:53:
獲得一點兒透明度對你而言變得很困難。這是工具最終將提供幫助的地方。但是,工具的缺乏某種程度上會讓人們陷入一個相當大的陷阱。
00:19:05 - Saron Yitbarek:
這真的很好。那麼讓我們回到 OpenWhisk。請給我說說關於它的事情。
00:19:11 - Rodric Rabbah:
該項目在 Amazon Lambda 宣布推出產品的那一刻就開始了,這實際上是無伺服器開始成為術語,並且開始在該領域獲得關注的時刻。當我們看到 Lambda 時,我們開始思索:「這裡有許多技術需要開發。不僅僅是在新的雲計算的基礎層上,而且在置於其上的編程模型之上,這實際上都使得它更易於被程序員訪問。」你知道,由於出自 IBM 研究所,我們擁有相當強大的技術,不只是編程語言設計、編譯器專業知識以及運行時的專業知識的技能。
00:19:54:
我們的一個小團隊,基本上三個人……
00:19:57 - Saron Yitbarek:
哇。
00:19:57 - Rodric Rabbah
……聚集在一起,做了最初的開發和原型,最終成為 OpenWhisk,帶有命令行工具,這是現如今無伺服器實際上的編程介面。編程模型概念,然後是它必須支持的實際架構,本質上,是伺服器模型的這個功能,提供了無伺服器所支持的所有好處。
00:20:22:
請注意,真正的起源是 Amazon Lambda 的出現,並可以說這是一種新的計算模型。
00:20:28 - Saron Yitbarek:
那麼花了多長時間?或者說是第一個版本什麼時候出現的。
00:20:30 - Rodric Rabbah:
實際上很快。事實上,當 IBM 宣布……好吧,那時還是 IBM OpenWhisk。從我們第一次提交到現在才一年。
00:20:39 - Saron Yitbarek:
哇。我的天哪。
00:20:41 - Rodric Rabbah:
這著實令人激動。
00:20:43 - Saron Yitbarek:
這確實很令人印象深刻。事實上,當它第一次啟動時,它不叫 OpenWhisk,而是 Whisk。對嗎?
00:20:49 - Rodric Rabbah:
Whisk 是內部名稱,沒錯。我取的這個名字。這個名字背後的意思是迅速而又靈活地行動。
00:21:00 - Saron Yitbarek:
很好。
00:21:01 - Rodric Rabbah:
你「攪拌」了一個功能,就可以了。你可以將其放入烤箱中烘焙。
00:21:07 - Saron Yitbarek:
太好了,因為當我看到它,我肯定想的是雞蛋。我在想,讓我們「 攪拌 」一些雞蛋。
00:21:12 - Rodric Rabbah:
對。我們對該名稱進行了一些正面和負面的評價。當我們開源一項技術,並將其放到 GitHub 上時,我們會在上面加上 open 前綴,以強調該技術與開源一樣開放,可以自由使用、自由下載、自由貢獻。
00:21:32 - Saron Yitbarek:
是的。
00:21:33 - Rodric Rabbah:
我們將其開源的目的,實際上是一定程度上提升可以在當今無伺服器平台上執行標準。對我們來說,重要的是要建立一個平台,不僅可以用於生產環境,還可以與全世界共享,而且還可用於學術研究或一般性研究。也許因為出自 IBM 的研究機構,我們有點兒在意這個。
00:22:00:
但是,這是有所回報的,我知道一些大學 —— 從 Princeton 到 Cornell —— 在他們的研究中使用 OpenWhisk。我去過 Brown、 Williams College、 MIT、 CMU 等幾所大學,並且進行了一些講座,目的是鼓勵學生真正地去研究圍繞無伺服器以及伺服器功能的問題、工具、編程模型,並且使他們對技術感興趣。
00:22:26:
向他們顯示,如果他們真的為開源項目做出了貢獻,那麼有一條路可以讓 IBM 的雲功能接受它並在生產環境中運行,通常在一周之內。
00:22:34 - Saron Yitbarek:
哇。這麼快。
00:22:36 - Rodric Rabbah:
這讓一些人感到驚訝。
00:22:38 - Saron Yitbarek:
這是一個非常高效的過程。
00:22:41 - Rodric Rabbah:
這確實證明了我們是如何在開源環境下開發許許多多技術的。這不是一個開放核心模式,有些組件有所保留。實際上在 IBM 雲之中所運行的就是 Apache OpenWhisk 項目。
00:22:56 - Saron Yitbarek:
當你思索無伺服器的未來,以及我們所選擇的前進道路時,你覺得它們將是不可避免地奔向開源嗎?
00:23:08:
我認為最近對於開源的價值存在一場激烈的爭議,尤其是在雲計算領域。
00:23:13 - Saron Yitbarek:
是的,沒錯。
00:23:15 - Rodric Rabbah:
如果你在思考為什麼人們會轉向雲計算,或者為什麼他們可能會厭惡投身於雲計算領域,這就是供應商鎖定的問題……喪失透明度。開源在一定程度上緩解這些問題,發揮了重要的作用。然後再看看類似 Kubernetes 的服務,它只是在容器和系統管理方面吞噬了雲,就那麼的成功!
00:23:41 - Rodric Rabbah:
如果你正在做的事情接觸到了容器,鑒於它的主導地位,保持閉源與否還值得討論嗎?我傾向於認為開放性是有幫助的,從開發人員的角度來看,這很有吸引力。
00:23:57 - Saron Yitbarek:
當你考慮未來的無伺服器生態及其工具、項目以及服務時,你看到了什麼呢?對你來說,無伺服器的未來是什麼樣的?
00:24:08 - Rodric Rabbah:
我認為,你會開始越來越少思考底層技術,而變得越來越多地考慮編程體驗以及圍繞它的工具:用於調試的、用於部署管理的、用於性能分析的、用於安全性。
00:24:26:
我認為,所有這些都非常重要。你如何運行你的功能的底層機制 —— 無論它們是在容器中還是在一些未來的技術下運行,也無論你是將它們運行在一個雲上或是多個雲上 —— 我認為,它們都不重要。有點兒像是 Kubernetes 在容器以及容器管理方面所做的事情。
00:24:46:
類似的還有一層要放在上面,就是服務分層的功能,可以實現那種無伺服器概念。然後,它實際上的表現取決於你在其中安放的中間件。你如何賦能授權給開發者,讓他們真正利用這款新的雲端計算機,以及你要在它周圍投入的辛勞,讓他們的體驗愉快。
00:25:07 - Saron Yitbarek:
是的。這種賦能授權看起來怎麼樣?
00:25:13 - Rodric Rabbah:
一言以蔽之,就是高效。這是一種能力,可以只專註於對於我,作為一名開發人員而言有價值的東西,或者如果我在公司工作的話,對於我公司的價值。這樣能夠更快地規避問題,因為你釋放了你的腦細胞,而不用去考慮基礎設施和如何伸縮,以及在硬體層面如何保障事物的安全性。
00:25:38:
現在,你可以真正地創新,將腦力重新投入到更快的創新中去,從而為你的終端用戶帶來更多的價值。我想把這一切都歸結於更高的效率。
00:25:55 - Saron Yitbarek:
Rodric Rabbah 是 OpenWhisk 的一位創始人。還記得我在這一期節目開始的時候所說的嗎?互聯網所基於的那種老舊的客戶端 - 伺服器模型並不會消失。改變的是,我是說徹底改變的是我們對伺服器的思考方式。
00:26:19:
在所謂的無伺服器世界之中,希望我們專註於代碼本身,而不用擔心基礎架構。但是,我們所選擇的抽象等級,以及如何保持對於未被抽象的工作的控制,才是使得無伺服器世界變得真正有趣的地方。
00:26:40:
無伺服器最終應當是為開發人員賦能授權的。免於打補丁、進行擴展和管理基礎設施。但是,與此同時,即使我們抽象化了一些任務,依然必須對整體如何工作保持關注。我們會問,我要放棄的是哪些控制權,而我要收回的又是哪些控制權?
00:27:07:
下一集是我們史詩般的第二季的大結局,《代碼英雄》將要前往火星。我們將會了解 NASA 的火星探測器如何開始自己的開源革命。並且我們將與 NASA 噴氣推進實驗室的 CTO 進行交流,了解開源是如何塑造太空探索的未來的。
00:27:39 - Saron Yitbarek:
與此同時,如果你想要更加深入地研究無伺服器開發的問題,或是在這一季里我們所探索過的任何主題,請訪問 redhat.com/commandlineheroes,查看免費資源。當你在那裡時,你甚至可以為我們自己的代碼英雄遊戲作出貢獻。
00:28:00 - Saron Yitbarek:
我是 Saron Yitbarek。感謝收聽,編程不已。
什麼是 LCTT SIG 和 LCTT LCRH SIG
LCTT SIG 是 LCTT 特別興趣小組 ,LCTT SIG 是針對特定領域、特定內容的翻譯小組,翻譯組成員將遵循 LCTT 流程和規範,參與翻譯,並獲得相應的獎勵。LCRH SIG 是 LCTT 聯合紅帽(Red Hat)發起的 SIG,當前專註任務是《代碼英雄》系列播客的腳本漢化,已有數十位貢獻者加入。敬請每周三、周五期待經過我們精心翻譯、校對和發布的譯文。
歡迎加入 LCRH SIG 一同參與貢獻,並領取紅帽(Red Hat)和我們聯合頒發的專屬貢獻者證書。
via: https://www.redhat.com/en/command-line-heroes/season-2/at-your-serverless
作者:Red Hat 選題:bestony 譯者:JonnieWayy 校對:acyanbird, wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive