M型的企业软件——AWS re:Invent 之我见

image

M型的企业软件——AWS re:Invent 之我见

做者:Michael Yuan
开源:M型的企业软件——AWS re:Invent 之我见git

我记得几年前亚马逊云的 AWS re:Invent 会议只是个几百人的小型活动。 彻底没有料到,在过去的十年里,AWS re:Invent 已经发展成为世界上最大的技术会议之一。 议题依然是亚马逊云的产品与服务。 亚马逊云现在在企业计算领域占据着主导地位,已经成为软件创新的标杆与热点。所以, AWS re:Invent 大会是值得软件行业每一个人都密切关注的。
image
AWS re:Invent 2019年会于12月2日至12月6日在拉斯维加斯举行 。 共有6.5万名参会者,门票1700美圆。这些参会者本身付费来了解亚马逊云的产品,来学习其余亚马逊云客户是如何购买或使用亚马逊云服务的。这完美地证实了亚马逊云的成功! 拉斯维加斯虽然常常举办大型活动和会议, 可是,这样规模的技术大会也已经让拉斯维加斯办会能力达到了极限。github

在一周的时间里,AWSre:Invent 完全改变了拉斯维加斯大道的面貌,使之成为一个纵横5个大型会议中心的演讲盛会。 从一个会场走到下一个会场常常须要一个小时。做为参会者, 我体验了亚马逊云生态系统的各类创新,思考了这些创新将如何影响整个软件行业。web

个人感悟是:软件在变得更加抽象的同时也在变得更具象。 链接商业与硬件的中间层将变得愈来愈重要。编程

软件正变得愈来愈抽象

亚马逊云是一家计算基础设施提供商。 它之因此发展得如此壮大,是由于基础设施是大多数机构的痛点。 云计算应该是简单的ーー像供应电力或自来水同样,供应计算能力。然而,随着愈来愈多企业采用亚马逊云,它也变得愈来愈复杂。AWS 如今已经有超过100种不一样的产品。后端

为了续写前面的成功,天然而然,亚马逊云要推出更简单、更容易使用的基础设施产品。 换句话说,软件正变得愈来愈抽象,从而隐藏纷繁复杂底层基础架构里面的细枝末节。
image
今年 re:Invent 大会最热门的话题之一就是无服务器的微服务。 在理想状态下,开发者无需担忧服务器、虚拟化、容器、操做系统、平台、资源,以及管理服务器带来的复杂性。 为何不可让开发者直接把编写好代码部署到云中,而后由云服务自动调整资源以知足各类负载? 通过多年的探索,随着 Docker、 k8s 和相关技术的进步,无服务器的底层基础设施软件终于走向成熟。 在此次 re:invent 大会上,无服务器微服务的使用场景是最热点的议题之一。
image
亚马逊云首席执行官 Andy Jassy 在主题演讲中, 发布了几款人工智能产品,如亚马逊欺诈探测器、亚马逊CodeGuru、亚马逊客服中心 Connect 和亚马逊 Kendra。 这些本质上都是亚马逊云为应用程序开发者提供的打包的 AI 微服务。
image
Jassy 的另外一个重大发布,是 SageMaker Studio。 它是一个基于网页的集成开发环境,能够完成 AI 用户的建模,训练,推理等需求。 经过它,用户能够直接与亚马逊云后端的 AI 微服务进行交互。 可见,亚马逊云如今不只构建基础设施服务,并且还为业务用户提供方便使用此类服务的用户介面。浏览器

无服务器微服务的时代可能终于要到来了。 经过无服务器,软件正变得愈来愈抽象,愈来愈脱离其底层的基础架构。缓存

软件正变得愈来愈具象

在软件基础设施的另外一面,软件在愈来愈接近硬件。 它在减小抽象度,变得更具体。安全

推进这种演变的缘由是,咱们已经进入了后摩尔定律时代。 用户所要求的性能改进不能再简单地经过提高 CPU 速度来知足了。 亚马逊云开创了在特定领域(如网络、并行处理和人工智能推理)中提供高性能的定制硬件以提升性能。
image
一个很好的例子是 AWS Nitro。 它提供了一套专用的硬件 i / o 卡、控制器和安全芯片。 经过利用软件基础设施,利用 Nitro 硬件的优点,亚马逊云可以交付新的更快更经济的 EC2 虚拟机。 受益于 Nitro,亚马逊云在2018年新增的 EC2 虚拟机比前一年增长了3倍。
image
Peter DeSantis 在他的主题演讲中演示了经过 Nitro 和硬件优化的网络软件栈,EC2 c5n.x18large 的性能几乎可以随着CPU数量的增长而线性提高。 这已经达到了克雷超级计算机的性能指标。 这样一来, 亚马逊云能够向客户提供“超级计算机服务”。服务器

在2019年的 re:Invent 中,亚马逊云一口气宣布了好几个用于加速人工智能和大数据业务的芯片和硬件。
image
Graviton2 是基于 ARM 架构设计的 CPU。 与英特尔、 AMD 公司的 x86 cpu 相比,Graviton2 性能提升了40% ,成本下降了20% 。 它还为数据压缩的工做负载提供了硬件加速。
image
AWS Inferentia 是为人工智能而设计的硬件处理器。 对于神经网络的计算负载,Inferentia 比通常 CPU 快3倍,还便宜40% 。
image
AQUA 是一种新的硬件加速缓存,能够将数据仓库应用程序的查询性能提升10倍。网络

随着硬件愈来愈专业化,对软件的需求也不断增长,这些软件能够“本地”访问硬件并使用其特定功能。 从这个意义上说,软件正变得愈来愈不抽象。 与开发通用的上层应用不一样,开发者必须处理特定硬件的不一样之处和特定功能。

M 型态中的机会

综上所述,随着上层抽象软件和底层具象软件的重要性愈来愈受关注,传统中间件如通用应用服务器和容器的重要性可能将被削弱,造成了一个两边高中间低的 M 形状。

这会催生新一代的中间件,才能让微服务的开发和部署变得更加容易。 在我看来,正在兴起的 WebAssembly 技术可能正好契合了这种需求。

做为中间件的 WebAssembly

Webassembly (Wasm) 最初是做为 web 浏览器中的一个高性能执行引擎而出现的。 支持多语言(还支持像 Rust 这样的流行新语言) ,多平台,轻量级,速度快,而且经过模块化的安全模型提供本地硬件访问。 这些特性使 Wasm 成为本地云微服务的强大执行引擎。

• 与 Java 和 JavaScript 虚拟机相比,Wasm 支持更多的编程语言、更轻便,并提供对特殊硬件的访问。

• 与 Docker 这样的容器相比,Wasm 更轻更快。Wasm程序无需任何改变就能够运行在任意主机上。 Wasm 还有一个更精确的模块化安全模型,能够访问本地操做系统和硬件。

了解关于服务器端 WebAssembly 的原理和历史

新的但愿

Second State 公司提供了为服务器端应用程序优化的 Wasm 编译器、运行时和本机硬件模块。 请容许我在这里给本身的公司打个广告,介绍一下最近在该领域发布的两个开源产品。

欢迎开发者和我交流见解,发送邮件到michael@secondstate.io 与我联系。

展望将来

咱们相信,Wasm 将在区块链、人工智能和云原生的微服务中有普遍的应用。 咱们但愿在从此的AWS re:Invent看到愈来愈多的 Wasm 应用。 在此以前,让咱们一同参加2020年2月在谷歌举行的 WebAssembly 峰会(WebAssembly Summit),讨论 WebAssembly 在服务器端的前景!

相关文章
相关标签/搜索