Docker 与 WebAssembly 在 Wasm Day NA 2022 上携手并进

作者:Christopher Crone,Docker 工程总监,本文中的“我”均指代 Chris

本文为 Docker blog 的翻译,作者:Christopher Crone,Docker 工程总监,本文中的“我”均指代 Chris

原文链接: https://www.docker.com/blog/docker-and-wasm-together-wasm-day-na/

你或许已经听说了 WebAssembly (简称 Wasm) 最近很火。 这是一项相对较新的技术,Wasm 可以把你使用 Rust、C、C++、JavaScript 以及 Golang 等语言编写的应用程序编译称成字节码,然后在一个沙盒环境运行。


可是它为什么会火呢?这个沙盒环境可以在各种各样的计算环境中运行,包括 Web 浏览器中的 JavaScript VM。Wasm 沙盒是基于数十亿美元基础软件研发,达到安全、速度和跨平台兼容性的目标。而且还意味着只需进行一些小的改变,就可以在浏览器中运行现有代码。是的,你不用问了,Wasm 它可以运行 Doom 游戏。

在浏览器中运行 Doom 只是一个应用场景。 像 WasmEdge 这样的公司正在使用 Tensorflow 来突破 Wasm 应用的界限。Fermyon 正在为 Wasm 构建用于微服务的工具,而 VercelFastlyShopify Cloudflare 使用 Wasm 在边缘运行代码。 Figma 正在使用 Wasm 为他们的应用程序带来浏览器里的高性能,Figma 的新母公司 Adobe 正在使用 Wasm 将他们的桌面应用程序带到 Web。

如果上面这些例子都没有让你对 Wasm 的巨大潜力感到激动,那就没什么能让你激动的了!

Docker 和 Wasm 结合在一起,会发生什么?


那么 Docker 用 Wasm 做了什么? 我们将 Wasm 和容器视为互补技术。要解决实际应用的问题,你可能用到 Wasm 或者容器,或者两者都要用到!它们是兼容的技术,并且应该在你的云原生应用程序中很好地协同工作。

每个实际的应用都不一样。 例如,Wasm 的快速启动时间非常适合短期操作,当你需要在代码级别执行严格的安全保证时,它的隔离性恰好派上用场。 但截至目前,Wasm 没有多线程或垃圾收集功能,因此任何具有这些要求的应用场景都不适合。 Wasm 还要求你从源代码重新构建你的软件以使其正常工作。
 

Cloud Native Day 上的 Docker


作为钻石赞助商,Docker 将在 10 月 24 日在底特律举行的 Cloud Native Wasm Day NA 上,讨论我们如何借助他们已经熟悉并且喜爱的开发体验,为开发者提供他们所需的 Wasm 工具。

我们的首席技术官 Justin Cormack 将发表大会主题演讲。在他的演讲中,他将谈论容器、Docker 和云原生社区如何拥抱 Wasm,并就我们可以从这里走向何方提供一些见解。我强烈推荐!

来自 WasmEdge 项目的 Michael Yuan 和我也将发表演讲来展示 WASI 和容器工作负载如何在 Docker Desktop 中协同工作。你将了解何时使用 Wasm、Wasm 的当前工具选项以及如何一起使用 Docker 和 Wasm。我们甚至会分享预览的下载链接,以便你自己试一试!

如果打算参加 Cloud Native Wasm Day,请不要错过我们的主题演讲和演讲!

猜你喜欢

转载自blog.csdn.net/weixin_42376823/article/details/127450903