Deislabs開源 使用WebAssembly打造的PaaS項目Hippo

微軟的 DeisLabs 團隊 9 月 21 日發佈了一個稱之爲Hippo的開源PaSS,Hippo 利用 WebAssembly 和其他現代雲本地化工具,提供快速、便攜和安全的沙盒環境,以編譯、部署、運行和管理應用程序,期望改造當前PaaS生態系統。 Hippo提供工具讓用戶將應用程序,打包成程序對象資源包(Bindle),並且上傳到可供搜索的Bindle服務器,而Hippo則在底層使用這些Bindle來儲存和組織應用程序。

Deislabs開發Hippo的目標主要解決兩個問題,第一是讓開發應用程序和服務更簡單,Hippo提供一套方便的工具,開發者可以快速建置和測試新想法。 第二則是讓開發團隊更輕鬆地管理應用程式發佈生命週期,Hippo使用稱爲頻道(Channels)的概念,頻道會根據制定的標準,自動部署最新的版本。

開發者通過使用Hippo命令行工具,可以上傳最新版本,或是建置本地開發用的Bindle,而在未來,Deislabs會強化該工具,並且讓開發者能夠創建應用程序、配置頻道、收集日誌和附加TLS證書等。 用戶也可以使用網頁界面註冊新賬戶、訪問應用程序和創建新的測試環境。

WebAssembly是一種類似組合語言的的低階語言,能編譯成爲小巧的二進制格式,並且以接近本地性能執行,而Hippo則利用WebAssembly系統接口(WebAssembly System Interface,WASI),在雲上執行WebAssembly。 官方提到,因爲使用WebAssembly,Hippo便能獲得三個主要的好處。

  • 由於WebAssembly應用程序會以沙盒執行,應用程序僅能獲取各自的內存位置,除非Runtime明確授權,否則無法獲取沙盒環境之外的內容,包括主機調用、系統文件、函式庫和裝置,因此Hippo具有高度安全性。
  • 另外,WebAssembly還讓Hippo應用程序具有可移植性,當應用程序編譯成WebAssembly,應用程序並不在意操作系統的底層架構,因此當編譯後的應用程序部署到Hippo,不需要修改就能夠在Windows、MacOS和Linux上運行。 也就是說使用Hippo,開發者在將應用程序傳送到Linux服務器執行前,可以先在Windows上以完全相同的二進制文件編譯並且測試,達到真正一次構建,隨處執行的理想。
  • Hippo得利於WebAssembly接近本機執行性能的好處,在官方的實驗中,冷啓動加載應用程序到實體化WebAssembly Runtime,約只需要10毫秒的時間,官方提到,他們正在進行一些改進,甚至可將啓動時間縮短至3毫秒。

想嘗試的開發者已經可以開始試用Hippo,而官方也持續改進Hippo,像是新增命令行工具的功能,或是讓Hippo在工作負載調度工具nomad上執行更加容易,並且提升Hippo和其他系統的互通性等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章