Second State virtual machine(SSVM)是高性能的 WebAssembly 虚拟机,专门为服务端应用程序设计优化。
SSVM 的主要功能:
- 高性能,支持 AOT 优化,适合服务器上运行;
- 无缝支持服务端应用程序框架,例如 Node.js;
- 支持安全访问外部资源,例如数据库、消息队列,甚至是新的 AI 硬件
- 支持新的云计算计费方式,精确计量应用程序的资源消耗。
WebAssembly(Wasm) 在云计算方面有着非常巨大的潜力,甚至可能成为下一个 JVM 或者 V8:它支持多语言 ,特别是像 Rust 这样的新锐语言,并且通过模块化的安全模型提供本地操作系统或者硬件的访问,比如 AI 芯片。与 Docker 这样的容器相比,Wasm 更轻更快,跨平台通用,Wasm 应用程序无需更改,就可以在不同的操作系统上运行。更重要的是,Wasm 程序提升提供了接近于本机代码的性能,而又不牺牲安全性。
SSVM 最新发布的0.6.0版本,增加了对 Node.js 以及WASI 的支持。基于 SSVM ,开发者能够在 Node.js 应用之内方便地调用 Rust 函数,从而大幅提升了 Web 应用的性能。
后摩尔定律时代, 缺乏原始性能一直都是 JavaScript 的争议点。Node.js 通过大量使用 C 语言编写的本机库与模块来解决这个问题,V8 JS 引擎本身也是这么做的。
但是作为应用的开发者,要如何创建高性能的函数呢?用 C 写函数,并且作为 NAPI 模块运行? 现在,还有另外一种更好、更快的方法:通过 SSVM,在 Node.js 调用 Rust 函数。
使用 Rust 重写计算密集型函数,可以在启动和执行速度方面获得10 倍至 100 倍的性能增长。
Get Started:https://www.secondstate.io/articles/getting-started-with-rust-function