前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Deislabs开源 使用WebAssembly打造的PaaS项目Hippo

Deislabs开源 使用WebAssembly打造的PaaS项目Hippo

作者头像
张善友
发布2021-11-02 16:23:50
6340
发布2021-11-02 16:23:50
举报
文章被收录于专栏:张善友的专栏张善友的专栏

微软的 DeisLabs 团队 9 月 21 日发布了一个称之为Hippo的开源PaaS,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和其他系统的互通性等。

-----------------------------------------------------------------------------------------------

DeisLabs是Azure的孵化器项目之一,它致力于为Kubernetes构建工具。近来,它选取Rust来开发新产品Krustlet,允许开发者在Kubernetes中运行多个WebAssembly模块。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-10-31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档