谷歌应用引擎使用新近开源的gVisor沙箱提供Node.js 8.x支持(30)

发布于2019-04-21 20:21:12

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

Google I/O大会上,Myles Borins(Node.js技术指导委员会负责人)和Steren Giannini(谷歌应用引擎产品经理)宣布了适用于谷歌应用引擎标准环境的Node预览,完整版本有望在数周后提供(与会者可以提交请求,立即试用)。

谷歌应用引擎(GAE)是谷歌的平台即服务(PaaS)产品,支持一个“灵活的”环境和一个“标准的”环境。这个灵活的环境在谷歌计算引擎VM上的Docker容器内运行应用程序实例,因此可以支持任何可以容器化的语言运行时。标准版本在针对特定运行时的沙箱环境中运行应用程序。在引入Node.js之前,该标准环境已经支持Python、Java、PHP和Go。虽然标准环境约束更多而且更复杂,但它可以更快地纵向扩展——秒级,而灵活的环境是分钟级。

为了在GAE标准环境中安全地运行Node.js,谷歌使用了最近宣布开源的gVisor沙箱容器运行时。gVisor是一种把容器沙箱化的新方法。它在主机操作系统和在容器中运行的应用程序之间提供了一个安全的隔离边界。这是通过使用Go重写Linux用户空间内核实现的。感兴趣的读者可以在谷歌平台博客上了解近日发布的更多有关gVisor的信息。

包含Node.js的GAE标准环境提供了一个惯用的Node运行时环境,也就是说,和你可以在任何其他地方运行的Node.js官方版本相同。没有API或语言限制,开发人员可以使用NPM注册中心的任何模块。此外,由于这项服务是全托管的,谷歌将负责及时更新和打补丁。该环境对Node.js 8.x提供了开箱即用的支持。

除了宣布GAE标准环境支持Node.js外,Borins确认,谷歌计划在不远的将来把Node.js 8.x引入“谷歌云函数(Google Cloud Functions)”。

查看英文原文Google App Engine to Support Node.js 8.x Using the Recently Open Source gVisor Sandbox