Server-side WebAssembly runtime reaches GA status

Promising faster compilation and production-ready performance, Wasmer 1.0 allows universal binaries compiled from native code to run in lightweight containers on multiple host platforms.

Server-side WebAssembly runtime reaches GA status
Violka08 / Getty Images

Wasmer, a server-side, open source runtime for the WebAssembly portable binary format, has reached general availability status. Taking advantage of WebAssembly for software containerization, Wasmer allows universal binaries compiled from C++, Rust, Go, Python, and other languages to run on different operating systems and in web browsers without modification.

With the Wasmer 1.0 release on January 5, the developers of Wasmer are citing “out of this world” runtime and compiler performance. They view WebAssembly, or Wasm for short, as a crucial component for the future of software execution and containerization, inside and outside the browser.

Wasmer can run lightweight containers based on WebAssembly on a variety of platforms—Linux, MacOS, Windows, Android, iOS—from the desktop to the cloud to IoT and mobile devices, while also allowing these containers to be embedded in any programming language. The Wasmer runtime also is able to run the Nginx web server and other WebAssembly modules.

Shipping with no dependencies, Wasmer 1.0 features:

  • A native object engine, featuring a wasmer compile command for precompiling Wasm files.
  • Headless Wasmer, for IoT usage.
  • Cross-compilation.
  • An extensible API.
  • Wasm-C-API support.
  • Error handling and debugging.
  • Production-ready performance.
  • Pluggable infrastructure, with single-pass compiling and support for fast compilation times not susceptible to JIT “bombs.” Cranelift and LLVM are supported.
  • Support for Apple Silicon hardware, based on Arm. Wasmer is the first non-interpreted, server-side WebAssembly VM to support Wasm in Apple Silicon, the developers said.

The Wasmer 1.0 CLI can be installed from and run standalone or embedded in a language.

Wasmer was introduced in December 2018, with the stated goal of doing for WebAssembly what JavaScript did for Node.js: establish it server-side. By leveraging Wasmer for containerization, developers can create universal binaries that work anywhere without modification, including on Linux, MacOS, and Windows as well as web browsers. WebAssembly automatically sandboxes applications by default for secure execution, shielding the host environment from malicious code, bugs, and vulnerabilities in the software being run.

Copyright © 2021 IDG Communications, Inc.