云計(jì)算的7種變化方式
譯文【51CTO.com快譯】
“云”這個(gè)詞是一個(gè)模糊不清的詞,即使人們長期堅(jiān)定地使用它。這種情況就好像,當(dāng)政治家們陷入困境時(shí),他喜歡說解決問題的辦法常常是通過“教育”一樣。在過去的十年或更長的時(shí)間里,從實(shí)習(xí)生到首席信息官,IT部門的每個(gè)人都知道,不管是什么問題,正確答案都是通過“云”來解決的。
不過,由于多年來“云”這個(gè)詞隱藏了許多復(fù)雜性和不確定性的東西,因此它的含義千差萬別。在這個(gè)流行詞被采用之前,大型機(jī)公司就開始銷售分時(shí)度假系統(tǒng)。最早的托管公司就是在Unix服務(wù)器上租用帳戶。像美國這樣的公司以娛樂為幌子,在線提供類似云的存儲和計(jì)算服務(wù)。
直到現(xiàn)在,這種演變還在一直持續(xù)。初始階段,云計(jì)算產(chǎn)品只是在服務(wù)器上運(yùn)行的幾十個(gè)虛擬機(jī)。即使用戶實(shí)例只是機(jī)器的一小部分,也可以假裝是root用戶。從而FTP服務(wù)器被重新命名為bucket和dropbox,服務(wù)也開始出現(xiàn)爆炸式增長,“aas”成為首字母縮寫詞創(chuàng)作者最喜歡的后綴。
這種演變?nèi)栽诶^續(xù),每一項(xiàng)新的發(fā)展都會促使云計(jì)算用戶重新思考他們想要租什么,以及他們期望用自己的錢得到什么。其中許多是重新發(fā)現(xiàn)和重新包裝的想法,還有許多是通過解決上一代解決方案產(chǎn)生的問題的更好的解決方案。所以這些給了人們提供了一個(gè)機(jī)會,那就是通過重構(gòu)云計(jì)算技術(shù),使其煥然一新。
以下是云計(jì)算創(chuàng)新和發(fā)展的七種重要方式。
1、減小計(jì)算粒度節(jié)省成本
第一代無服務(wù)器計(jì)算具有相對較大的計(jì)算單元。例如,AWS Lambda一開始就將所有的計(jì)算粒度四舍五入調(diào)用為100毫秒,程序員很快就發(fā)現(xiàn),他們花同樣的錢可以實(shí)現(xiàn)一個(gè)更快速、更簡單的計(jì)算,或者可能是一個(gè)20倍、30倍甚至100倍大的計(jì)算。如果他們不那么細(xì)心或者利用率不高,也沒影響,實(shí)際支付的賬單是一樣的。
隨著越來越多的無服務(wù)器平臺競爭,最小計(jì)算粒度的大小也越來越小。AWS停止了100毫秒取整,開始以1毫秒為增量計(jì)費(fèi)。
2、簡化操作系統(tǒng)
現(xiàn)代化的操作系統(tǒng)是一臺極好的復(fù)雜機(jī)器,設(shè)計(jì)用于處理打印作業(yè)、視頻游戲、文檔編輯和大量其他任務(wù)。您是否曾經(jīng)想過為什么要在啟動(dòng)云實(shí)例時(shí)準(zhǔn)備好所有代碼來處理這些任務(wù)?
Unikernels是消除所有復(fù)雜性的一種方法。一旦代碼運(yùn)行,編譯器將構(gòu)建一個(gè)更小的程序包,該程序包將位于標(biāo)準(zhǔn)虛擬機(jī)管理程序之上。支持者指出,這樣不僅效率提高了,攻擊面還要小得多,從而更易于保護(hù)。
為什么不直接從AWS或Google獲得你的最小操作系統(tǒng)呢?Google的Container-Optimized OS和Amazon的Bottlerocket將傳統(tǒng)的虛擬化范例應(yīng)用到操作系統(tǒng)中,其中容器是虛擬操作系統(tǒng),而最小的Linux則扮演著虛擬機(jī)管理程序的角色。它們在包裝只做一件小事的微服務(wù)方面十分出色,而不依賴于操作系統(tǒng)的大部分功能。
3、開源功能
另一種簡化部署到云平臺工作的方法是讓開發(fā)人員編寫一個(gè)簡單的功能,并將所有其他工作留給云平臺本身。在過去幾年中,所有的主要云計(jì)算供應(yīng)商都展示了自己的工具,這些工具允許一個(gè)小片段代碼、一個(gè)功能來做出一些決定,并處理一些數(shù)據(jù)。這些都是很好的進(jìn)步,特別是對于將許多服務(wù)組合成一個(gè)產(chǎn)品的開發(fā)者來說。
唯一的缺點(diǎn)是云計(jì)算供應(yīng)商鎖定的情況。雖然這些功能可以用多種語言編寫,但與框架的交互是專有的?,F(xiàn)在,有許多有趣的開源項(xiàng)目(openwhsk、OpenFaaS、Kubeless、Knative、Fission)提供“功能即服務(wù)”。
4、Arm芯片
Arm芯片不僅僅是給Mac愛好者設(shè)計(jì)的。AWS有一系列服務(wù)器運(yùn)的帶有Arm內(nèi)核的Graviron芯片,保證運(yùn)行成本降低40%。當(dāng)然有一些警告。必須重新編譯可執(zhí)行文件以在Arm平臺上運(yùn)行,除非使用的是Java、JavaScript(Node.js)或PHP(Drupal、WordPress等)等更高級別的語言。
能否實(shí)現(xiàn)大的節(jié)省在很大程度上取決于計(jì)算和負(fù)載的性質(zhì)。一些基準(zhǔn)測試將Gravitron機(jī)器與基于Intel的原始機(jī)器放在通用范圍內(nèi)。其他人則認(rèn)為基于Arm的實(shí)例的性能稍差一些,因此更適合于運(yùn)行低代碼,這些代碼可以在不延長運(yùn)行時(shí)間的情況下節(jié)省成本。
是否要更換這種呢?找到答案的唯一方法是在生產(chǎn)環(huán)境附近測試自己的工作負(fù)載,看看它們可不可以節(jié)省成本。
5、萬能數(shù)據(jù)庫
很久以前,F(xiàn)ortran程序員看到Fortran添加了一些令人興奮的新特性,并打趣說,不知道未來的編程語言會是什么,但還是將它稱為“Fortran”。今天,對于數(shù)據(jù)庫(作為服務(wù)層的原始微功能)來說,可能也是這樣的。很久以前,數(shù)據(jù)庫只能存儲矩形表,如今,幾乎可以做任何事情。
開發(fā)者開始注意到有多少功能。例如,Postgresql11有自己的JIT,用于編譯查詢并且其嵌入式函數(shù)可以提交或回滾事務(wù)。此數(shù)據(jù)庫使用JSON,因此在不超出數(shù)據(jù)庫容量的情況下構(gòu)建完整的微服務(wù)比以往任何時(shí)候都要容易。
其他數(shù)據(jù)庫,如Azure Cosmos DB 結(jié)合了SQL、MongoDB、Cassandra和Graph APIi。還有一些像Google的Firebase提供了存儲數(shù)據(jù)和通過復(fù)制將數(shù)據(jù)傳遞給客戶端的功能,實(shí)現(xiàn)了將分發(fā)和存儲結(jié)合起來。
6、辦公室應(yīng)用程序的新角色
充滿數(shù)字、字母和公式的網(wǎng)格是Bean計(jì)算人員和管理人員的通用語言,而不是編碼人員的通用語言,但作為一種智能文件格式和向大眾開放云的方式,它們正得到更多的尊重。“無代碼”理念將程序員從循環(huán)中擺脫出來,并通過將電子表格轉(zhuǎn)化為應(yīng)用程序的工具直接接觸宏程序。例如,谷歌(Google)宣稱,一家公司使用AppSheet構(gòu)建和部署了超過35個(gè)“無編碼技能”的商業(yè)應(yīng)用程序。
不僅僅是電子表格,辦公應(yīng)用程序套件現(xiàn)在是越來越多的運(yùn)行業(yè)務(wù)的定制應(yīng)用程序。一些編碼人員并不是在獨(dú)立實(shí)例中構(gòu)建和部署應(yīng)用程序,而是在構(gòu)建與文字處理器、幻燈片演示生成器以及Google或Microsoft universe中的其他通用工具集成的應(yīng)用程序。從而使得,企業(yè)中每個(gè)員工更輕松地處理文檔和電子郵件。
7、邊緣計(jì)算
云計(jì)算通過將越來越多的計(jì)算能力推向網(wǎng)絡(luò)邊緣。像Cloudflare這樣的公司現(xiàn)在提供智能計(jì)算服務(wù)。Cloudflare Workers將在其200多個(gè)數(shù)據(jù)中心盡可能靠近用戶的位置運(yùn)行JavaScript、Rust、C或C ++代碼。
Amazon的AWS for the Edge服務(wù)提供了類似的機(jī)會,讓代碼更接近用戶。那些使用Amazon SageMaker機(jī)器學(xué)習(xí)服務(wù)的人可以把他們從主要數(shù)據(jù)中心推向網(wǎng)絡(luò)邊緣。亞馬遜公司目前強(qiáng)調(diào)與新興5G蜂窩網(wǎng)絡(luò)的連接,毫無疑問,消費(fèi)者將越來越多地采用移動(dòng)設(shè)備瀏覽互聯(lián)網(wǎng)。
微軟的Azure IoT Edge旨在依賴云計(jì)算的功能實(shí)現(xiàn)設(shè)備爆炸式增長。
例如,Custom Vision服務(wù)將邊緣計(jì)算引入所有新興的攝像機(jī)網(wǎng)絡(luò)。
隨著云計(jì)算的增長和使用,大量的例子也正在開發(fā)中。云計(jì)算曾經(jīng)僅限于可租用實(shí)例的集中式數(shù)據(jù)中心,但現(xiàn)在正在遷移到網(wǎng)絡(luò)中。那么之后會是什么呢?物聯(lián)網(wǎng)?智能烤箱?還是智能汽車設(shè)備?
只要租賃比構(gòu)建更加經(jīng)濟(jì)有效,那么云計(jì)算就將被任何需要電腦和數(shù)據(jù)存儲來推動(dòng)業(yè)務(wù)發(fā)展的人員所接受。
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】