AIGC在金融场景是如何落地的? 了解详情
写点什么

Fermyon 推出 WebAssembly 云,让无服务器微服务超越容器

  • 2022-12-24
    北京
  • 本文字数:1389 字

    阅读完需:约 5 分钟

Fermyon推出WebAssembly云,让无服务器微服务超越容器

在 2022 年KubeCon/CloudNativeCon大会上,Fermyon 发布了其面向 WebAssembly 应用程序的微服务平台Fermyon Cloud,目前已进入公测阶段。

 

Fermyon Cloud 的核心愿景是 WebAssembly 有潜力实现无服务器的承诺,克服在容器和虚拟机方面存在的限制。Fermyon 首席执行官 Matt Butcher认为,WebAssembly 在两个方面优于虚拟机和容器——启动时间和跨平台可移植性。

 

理想情况下,所有微服务都应该是无状态的,并使用有状态服务来存储它们的信息。因为有了这些特性,你应该能够尽可能快地启动和停止它们。想象一下,现在你可以立即启动应用程序,并在它不再处理流量时立即关闭它,而不是花几分钟来启动一个虚拟机或几秒钟或几十秒来启动一个容器。这就是我们所追求的 WebAssembly 模型。

 

根据 Butcher 的说法,你可以在不到一毫秒的时间内执行应用程序的第一条指令,有时甚至可以达到微秒级。这将使构建可伸缩的应用程序变得更加容易,当请求达到峰值时,应用程序可以快速伸缩,当请求下降到零且没有流量时,应用程序不会浪费 CPU 或内存。相反,在使用容器或虚拟机时,一般的冷引导方式是在处理请求后将实例空闲一段时间,以防有新的请求流入。

 

WebAssembly 的另一个好处是跨平台可移植性,这种可移植性一直延伸到可执行文件级别。

 

我感兴趣的是能够让相同的已编译的工件、字节码在各种操作系统和 CPU 架构之间运行。在容器世界,容器镜像被绑定到一种架构、一种 CPU 架构或一种操作系统上,你需要使用多架构镜像才能让相同的应用程序运行在多个环境中。现在,你可以让相同的 WebAssembly 模块在 ARM 架构的 Linux 上运行,在 AMD 架构的 Windows 上运行,在云端的某个位置运行,你不需要关心平台的架构问题,这一点很吸引人。

 

可移植性也扩展到了语言层面,目前许多编程语言都支持将 WebAssembly 作为编译目标。在 Fermyon 平台上使用编程语言的主要要求是支持WASI。这意味着你可以使用 Python、C#和其他.NET 语言、C/C++、Go、Rust 和其他语言,但 Java、JavaScript/TypeScript、Scala 等语言除外。

 

Dermyon Cloud 基于Spin(Fermyon 开源的构建云微服务的框架),并利用了许多其他开源项目,包括用于管理发布的Bindle、用于编排的Nomad等。Fermyon Cloud 并不是只使用 Spin 来执行应用程序,而是使用了一种高度可伸缩的执行环境,他们说这种环境能够在一个包含 5 个工作节点的 Nomad 集群上运行数千个应用程序。

 

Butcher 表示,在将 WebAssembly 和基于容器的微服务叠加起来的同时,我们不能认为前者就是对后者的取代。相反,他认为这是技术上互补,在某些情况下将与容器和虚拟机一起运行。

 

并不是说虚拟机被容器取代了,然后容器也将被 WebAssembly 取代。每一次我们迈出一个增量的步骤,它们都是累加起来的。我们加了一个东西,但没有减掉任何东西。因此,虚拟机现在是一个比以往任何时候都强大的市场,管理虚拟机的工具也在不断改进。容器也是如此,我认为 WebAssembly 将是下一项补充性的技术。

 

正如前面提到的,Fermyon Cloud 现在正在公测中,唯一的限制是每个开发者最多可以启动 5 个实例。如果你希望在自己的平台上托管 Spin 应用程序,可以在任意主要的云供应商(包括 Azure、AWS、DigitalOcean 和谷歌)上使用Fermyon Installer

 

原文链接

https://www.infoq.com/news/2022/11/Fermyon-cloud-webassembly/


相关阅读:

后Kubernetes时代的未来?Wasmer 3.0 发布,可在浏览器外运行 WebAssembly

Docker 发布首个 WebAssembly 支持工具预览版

2022-12-24 08:006864

评论

发布
暂无评论
发现更多内容

软件测试 | 测试开发 | web前端的HTML浅析

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Web测试方法与技术之JavaScript 讲解

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | WEB 端常见 Bug 解析

测吧(北京)科技有限公司

测试

测试开发面试真题 | 测试老兵进阶突破,成功挑战大厂 P7 Offer!

测吧(北京)科技有限公司

测试

【GO】Go JSON反序列化失败情况总结

非晓为骁

Go json 反序列化

软件测试 | 测试开发 | 常用测试策略与测试手段

测吧(北京)科技有限公司

测试

BATJ互联网月薪38K的Java岗面试题首曝光,掌握这些大厂Offer指定跑不了

程序知音

Java java面试 后端技术 秋招 Java面试八股文

2021 金三银四面试必备?体系化带你学习:分布式进阶技术手册

钟奕礼

Java 架构 后端 java面试

从规模化平台工程实践,我们学到了什么?

SOFAStack

概述服务网格的优劣势

穿过生命散发芬芳

服务网格 9月月更

小程序怎样影响传媒产业的数字化

Geek_99967b

小程序

面试凉凉,阿里学长甩我一份24w字Java核心技术面试手册,真香

钟奕礼

Java 架构 后端 java面试

八家知名大厂联合手写的Java面试手册刚上线!竟就到达巅峰?

钟奕礼

Java 架构 后端 java面试

软件测试 | 测试开发 | 测试环境搭建

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Web自动化之Selenium安装

测吧(北京)科技有限公司

测试

公司内部分享文档应该怎么写?看这篇就够了

Baklib

小程序与工业互联网上的概况

Geek_99967b

小程序

软件测试 | 测试开发 | Selenium 测试用例编写

测吧(北京)科技有限公司

测试

22年程序员更卷了,金九银十“面试必备小册”最新开源

程序知音

Java 阿里 后端技术 秋招 Java面试题

Java高手怎样炼成?阿里大牛一份火爆GitHub的1046页笔记帮你解决

钟奕礼

Java 程序员 架构 后端 java面试

软件测试 | 测试开发 | Web测试方法与技术之CSS讲解

测吧(北京)科技有限公司

测试

从融云社交泛娱乐出海白皮书,看「社交+X」的全球攻略

融云 RongCloud

即时通讯 白皮书 泛娱乐社交

软件测试 | 测试开发 | 一道大厂测试开发面试真题,你需要几分钟解答?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试面经 | 从测试螺丝钉到大厂测试开发,三点成长心得和面试经验

测吧(北京)科技有限公司

测试

小程序容器,组装式应用的一种方案

Geek_99967b

小程序

软件测试 | 测试开发 | 黑盒测试方法论—因果图

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 什么是软件缺陷

测吧(北京)科技有限公司

测试

自有APP小程序如何打通微信登陆体系

Geek_99967b

小程序 小程序生态

阿里面试官内部题库,阿里发布2022年Java岗(正式版)面试题

程序知音

Java java面试 后端技术 秋招 Java面试八股文

软件测试 | 测试开发 | 测试面试真题|抖音的广告系统前后台,该如何测试?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Web测试方法与技术实战演练

测吧(北京)科技有限公司

测试

  • 扫码添加小助手
    领取最新资料包
Fermyon推出WebAssembly云,让无服务器微服务超越容器_语言 & 开发_Sergio De Simone_InfoQ精选文章