WebAssembly Runtime for Extensibility
How Shopify Uses WebAssembly Outside of the Browser - Shopify

How Shopify Uses WebAssembly Outside of the Browser - Shopify

12/18/2020

What this post added

This post introduces Shopify's adoption of WebAssembly (Wasm) for executing untrusted partner code on its infrastructure, outside of the browser. It details the technical requirements (security, performance, flexibility) and the choice of the Lucet Wasm runtime. The architecture involves wrapping Lucet in a Rust web service (Wasm Engine) for I/O and module management. Performance metrics show negligible impact (under 5ms execution time) compared to Storefront Renderer. The post also discusses the generation of Wasm, choosing AssemblyScript as the primary language due to developer familiarity and static compilation benefits, and highlights the community-driven nature of Wasm development.

Read the original post ↗