雲端計算的7種變化方式

roc_guo發表於2021-06-20

雲端計算的7種變化方式雲端計算的7種變化方式

不過,由於多年來“雲”這個詞隱藏了許多複雜性和不確定性的東西,因此它的含義千差萬別。在這個流行詞被採用之前,大型機公司就開始銷售分時度假系統。最早的託管公司就是在Unix伺服器上租用帳戶。像美國這樣的公司以娛樂為幌子,線上提供類似雲的儲存和計算服務。

直到現在,這種演變還在一直持續。初始階段,雲端計算產品只是在伺服器上執行的幾十個虛擬機器。即使使用者例項只是機器的一小部分,也可以假裝是root使用者。從而FTP伺服器被重新命名為bucket和dropbox,服務也開始出現爆炸式增長,“aas”成為首字母縮寫詞創作者最喜歡的字尾。

這種演變仍在繼續,每一項新的發展都會促使雲端計算使用者重新思考他們想要租什麼,以及他們期望用自己的錢得到什麼。其中許多是重新發現和重新包裝的想法,還有許多是透過解決上一代解決方案產生的問題的更好的解決方案。所以這些給了人們提供了一個機會,那就是透過重構雲端計算技術,使其煥然一新。

以下是雲端計算創新和發展的七種重要方式。

1、減小計算粒度節省成本

第一代無伺服器計算具有相對較大的計算單元。例如,AWS Lambda一開始就將所有的計算粒度四捨五入呼叫為100毫秒,程式設計師很快就發現,他們花同樣的錢可以實現一個更快速、更簡單的計算,或者可能是一個20倍、30倍甚至100倍大的計算。如果他們不那麼細心或者利用率不高,也沒影響,實際支付的賬單是一樣的。

隨著越來越多的無伺服器平臺競爭,最小計算粒度的大小也越來越小。AWS停止了100毫秒取整,開始以1毫秒為增量計費。

2、簡化作業系統

現代化的作業系統是一臺極好的複雜機器,設計用於處理列印作業、影片遊戲、文件編輯和大量其他任務。您是否曾經想過為什麼要在啟動雲例項時準備好所有程式碼來處理這些任務?

Unikernels是消除所有複雜性的一種方法。一旦程式碼執行,編譯器將構建一個更小的程式包,該程式包將位於標準虛擬機器管理程式之上。支持者指出,這樣不僅效率提高了,攻擊面還要小得多,從而更易於保護。

為什麼不直接從AWS或Google獲得你的最小作業系統呢?Google的Container-Optimized OS和Amazon的Bottlerocket將傳統的虛擬化範例應用到作業系統中,其中容器是虛擬作業系統,而最小的 則扮演著虛擬機器管理程式的角色。它們在包裝只做一件小事的微服務方面十分出色,而不依賴於作業系統的大部分功能。

3、開源功能

另一種簡化部署到雲平臺工作的方法是讓開發人員編寫一個簡單的功能,並將所有其他工作留給雲平臺本身。在過去幾年中,所有的主要雲端計算供應商都展示了自己的工具,這些工具允許一個小片段程式碼、一個功能來做出一些決定,並處理一些資料。這些都是很好的進步,特別是對於將許多服務組合成一個產品的開發者來說。

唯一的缺點是雲端計算供應商鎖定的情況。雖然這些功能可以用多種語言編寫,但與框架的互動是專有的。現在,有許多有趣的開源專案(openwhsk、OpenFaaS、Kubeless、Knative、Fission)提供“功能即服務”。

4、Arm晶片

Arm晶片不僅僅是給Mac愛好者設計的。AWS有一系列伺服器運的帶有Arm核心的Graviron晶片,保證執行成本降低40%。當然有一些警告。必須重新編譯可執行檔案以在Arm平臺上執行,除非使用的是Java、JavaScript(Node.js)或PHP(Drupal、WordPress等)等更高階別的語言。

能否實現大的節省在很大程度上取決於計算和負載的性質。一些基準測試將Gravitron機器與基於Intel的原始機器放在通用範圍內。其他人則認為基於Arm的例項的效能稍差一些,因此更適合於執行低程式碼,這些程式碼可以在不延長執行時間的情況下節省成本。

是否要更換這種呢?找到答案的唯一方法是在生產環境附近測試自己的工作負載,看看它們可不可以節省成本。

5、萬能資料庫

很久以前,Fortran程式設計師看到Fortran新增了一些令人興奮的新特性,並打趣說,不知道未來的程式語言會是什麼,但還是將它稱為“Fortran”。今天,對於資料庫(作為服務層的原始微功能)來說,可能也是這樣的。很久以前,資料庫只能儲存矩形表,如今,幾乎可以做任何事情。

開發者開始注意到有多少功能。例如,Postgresql11有自己的JIT,用於編譯查詢並且其嵌入式函式可以提交或回滾事務。此資料庫使用JSON,因此在不超出資料庫容量的情況下構建完整的微服務比以往任何時候都要容易。

其他資料庫,如Azure Cosmos DB 結合了SQL、MongoDB、Cassandra和Graph APIi。還有一些像Google的Firebase提供了儲存資料和透過複製將資料傳遞給客戶端的功能,實現了將分發和儲存結合起來。

6、辦公室應用程式的新角色

充滿數字、字母和公式的網格是Bean計算人員和管理人員的通用語言,而不是編碼人員的通用語言,但作為一種智慧檔案格式和向大眾開放雲的方式,它們正得到更多的尊重。“無程式碼”理念將程式設計師從迴圈中擺脫出來,並透過將電子表格轉化為應用程式的工具直接接觸宏程式。例如,谷歌(Google)宣稱,一家公司使用AppSheet構建和部署了超過35個“無編碼技能”的商業應用程式。

不僅僅是電子表格,辦公應用程式套件現在是越來越多的執行業務的定製應用程式。一些編碼人員並不是在獨立例項中構建和部署應用程式,而是在構建與文書處理器、幻燈片演示生成器以及Google或Microsoft universe中的其他通用工具整合的應用程式。從而使得,企業中每個員工更輕鬆地處理文件和電子郵件。

7、邊緣計算

雲端計算透過將越來越多的計算能力推向網路邊緣。像Cloudflare這樣的公司現在提供智慧計算服務。Cloudflare Workers將在其200多個資料中心儘可能靠近使用者的位置執行JavaScript、Rust、C或C ++程式碼。

Amazon的AWS for the Edge服務提供了類似的機會,讓程式碼更接近使用者。那些使用Amazon SageMaker機器學習服務的人可以把他們從主要資料中心推向網路邊緣。亞馬遜公司目前強調與新興5G蜂窩網路的連線,毫無疑問,消費者將越來越多地採用移動裝置瀏覽網際網路。

微軟的Azure IoT Edge旨在依賴雲端計算的功能實現裝置爆炸式增長。

例如,Custom Vision服務將邊緣計算引入所有新興的攝像機網路。

隨著雲端計算的增長和使用,大量的例子也正在開發中。雲端計算曾經僅限於可租用例項的集中式資料中心,但現在正在遷移到網路中。那麼之後會是什麼呢?物聯網?智慧烤箱?還是智慧汽車裝置?

只要租賃比構建更加經濟有效,那麼雲端計算就將被任何需要電腦和資料儲存來推動業務發展的人員所接受。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2777521/,如需轉載,請註明出處,否則將追究法律責任。

相關文章