为什么说软件服务的未来必然是WebAssembly?

image

为什么说软件服务的未来必然是WebAssembly?

WebAssembly(WASM)最初由W3C 的Mozilla、谷歌、微软、苹果等著名公司合作研发,是浏览器内应用程序的高性能执行引擎。随着WASM 在开发者社区中越来越流行,WASM 也正在从客户端迁移到服务端,成为服务端技术的新锐。image

价值定位


WASM 从客户端到服务端的迁移,与Java 和JavaScript 等前几代技术的发展历程一脉相承。与现有解决方案相比,WASM 在服务端提供了一些重要的价值。

与Java 和JavaScript 引擎相比,WASM通过LLVM工具链支持20多种编程语言,从而让开发人员有选择语言工具的自由,大大提高了生产力。特别是,它支持有影响力的新锐编程语言,例如**Rust **。同时,WASM 可以轻松支持CPU、GPU、 AI 优化芯片和FPGA 等硬件功能。

它提供了接近于本机代码的性能,而又不牺牲安全性。

image
图片来源:https://steveklabnik.github.io/booster2018/

与Docker之类的容器相比,它为开发人员提供了更抽象的代码执行环境,从而提高了开发效率。它可以直接部署代码和应用程序,而不必启动操作系统。这与当今的云原生微服务架构配合得很好。

WASM 消耗的内存和资源比操作系统级别的容器少得多。其模块化的安全模型允许为每个函数调用配置硬件和操作系统资源,从而在保证安全性的同时,保留了本机性能。

如果在 2008 年已经有了 WASM + WASI,那么我们压根无需创始 Docker 这个 项目了。 Wasm 就有这么重要!服务器上的 WebAssembly 是计算的未来。 — Docker 联合创始人 Solomon Hykes

此外,服务器端 WASM 受益于这几年源于区块链社区的重大创新。

区块链先行一步


服务器端 WASM 目前处于早期阶段,还有大量的工作亟待完成,包括优化、开发工具和集成库,然后才能在企业中大规模应用。但是,开发者已经在企业计算、去中心化的区块链应用等新兴领域中将其用于微服务。

区块链智能合约是不可更改并且自动执行的代码。去中心化的应用(或 dapps )可以通过 Web 界面与智能合约进行交互。这使得智能合约成为自然的微服务。

以太坊,EOS 和 Polkadot 等大型公共区块链网络(公链)都致力于采用 WASM 作为其下一代执行引擎。因此,公链是当今编写和部署 WASM 服务的最佳平台。

服务端 WASM 受益于近年来投入到区块链领域的数十亿美元的研发投资。这些区块链研发创新的许多都与企业应用高度相关。

  • 执行结果确定的应用程序
  • 对共享资源进行操作码级别的准确计费
  • 对计算结果的无信任共识
  • 对数字货币基础设施的支持
  • 应用程序的形式化验证
  • 零知识计算

让代码说话


使用Second State 的 BUIDL 开发工具,几分钟内,您就可以在区块链网络上部署微服务,然后围绕它构建一个去中心化的 Web 应用程序。

文档 中示例程序的“后端”是区块链智能合约(微服务)。它是去中心化与云原生的。
image
Second State 的 BUIDL 还能将 WASM 智能合约部署到以太坊基金会的 Ewasm 测试网上

服务端 WASM 的下一个爆发点是区块链之外的企业应用。在数据中心里,WASM 提供多种语言的服务(支持服务端上的 Rust !),支持多种硬件和操作系统平台,占用很少计算资源,并且可以直接触达底层硬件(比如 GPU 和 AI 芯片)。您可以在此处查看在WASM中运行Rust服务的概念演示

前方之路


即将发布的 Second State 虚拟机(SSVM)是为服务端应用程序优化的 WASM。

在区块链领域,Second State 已经走在了世界最前沿,为下一代以太坊兼容的区块链系统提供虚拟机(Ewasm)。用于区块链的 SSVM 原生支持256位整数运算。与其他 Ewasm 实现相比,SSVM 在虚拟机内部可以处理不支持的操作码以及实现了对gas 的精确计算,从而大大提高了性能。
image
在云服务领域,SSVM 优化了 WASM 针对企业的功能,例如程序状态的高效存储,高性能输入输出,多线程支持,以及对硬件加速器的直接支持。 通过与高通公司的合作,SSVM 在高通芯片上运行时,可以直接访问高通芯片的 AI SDK。

服务端 WASM 的发展前景充满了希望。

加入我们,向下一代云架构迈进!

发布了9 篇原创文章 · 获赞 1 · 访问量 856

猜你喜欢

转载自blog.csdn.net/weixin_44597631/article/details/103350113