【翻译】无服务器是云计算的 "正确 "方式吗?

客串文章,原载于CloudOps的博客,作者是CloudOps的云架构师Marc Boudreau

Server room

无服务器计算正在起飞。尽管自2014年AWS宣布推出Lambda以来,无服务器计算终于达到了推动模式转变的成熟度。

什么是 "无服务器 "计算?

无服务器计算描述了一种软件开发模式,其中应用程序与服务器没有直接互动。无服务器这个名字有点名不副实--服务器总是存在的,就像EC2背后总是有硬件一样。无服务器的价值在于不必花费你的资源来管理它们。你可以自由地只在必要或有价值的地方使用你的资源。

像AWS Lambda、Azure Functions或Google Cloud Functions这样的无服务器产品带来了更快、更环保、更灵活的解决方案。这就是为什么我们说它可以成为云计算的 "正确 "方式。

云原生和无服务器计算

在过去的几年里,云原生一直是应用现代化的北极星。云原生计算基金会(CNCF)使用这个术语来描述使用Kubernetes(一种容器编排系统)作为交付机制来构建应用程序。这个空间为客户增加了巨大的价值,并帮助开发者用基础设施即代码的方式更有弹性和可持续性地部署现有应用程序。

对于拥有成熟代码库的公司来说,容器化使公司能够将现有的应用程序迁移到云中。这就是Kubernetes和云原生运动容易(或者说更容易)获胜的地方。许多组织已经接受了云原生架构,在这个过程中变得更加高效、可扩展和灵活。

无服务器计算可能看起来是云原生计算的一个分支,因为它扩展了云原生的好处。实际上,它正在推动一种范式的转变。

"无服务器应用开发不是一个渐进的变化。它在速度、成本和可扩展性方面完全重置了可以建立的东西"。

Adrian Cockroft,AWS云架构战略副总裁

针对事件驱动型应用的无服务器解决方案

无服务器计算需要背离传统的思维方式,这些思维方式已被证明对容器化和云原生计算有用,因为它要求你以异步方式思考。无服务器计算在应用于事件驱动模式时大放异彩,在这种模式下,应用程序会在事件(状态变化)发生时做出响应。它与加载的代码配合得很好,成为将事件和下游系统或其他事件处理器联系在一起的粘合剂。像Lambda这样的无服务器服务使我们能够响应事件而生成代码实例,并且只为正在使用的计算能力付费。

Sam Newman在GOTO 2020上发表了一篇名为《我们要去的地方,不需要服务器》的演讲,详细介绍了无服务器计算如何要求我们以不同的方式进行构建。

我们可以做得更好!

承认可能有更好的方法来做事情是不容易的--特别是当你已经用一种方法做了这么久的事情。但现在是提出新问题的时候了,因为无服务器技术和事件驱动的应用可以带来更多的速度、敏捷性、环境绿色和差异化价值的解决方案。

1.1.速度

毫无疑问,向云计算的转移(如果做得好的话)使企业在当今的数字世界中能够更有效地运作。事件驱动的设计扩展了这种效率,因为它简化了应用程序本身。特别是功能即服务(FaaS)使你可以编写和部署较小的代码,而不必担心任何基础设施。这意味着应用程序可以更快运行。

2.敏捷性

微服务(如果构建得好)提高了应用程序的速度和敏捷性,使我们有能力通过更快速的实验和价值生成来 "快速失败"。在绿地项目中使用时,无服务器技术已被证明可以增加更多的敏捷性。无服务器系统的管理所需的复杂性远不及许多大规模虚拟机或Kubernetes部署。企业在独立部署许多小功能时,可以大幅提高其开发周转率,而不必担心相同水平的基础设施。

"你可以在短短几天内建立令人发指的复杂、可扩展的系统。"

阿德里安-科克罗夫特,AWS云计算架构战略副总裁

3.环境的绿色性

当服务、应用程序或容器运行时,会消耗大量的资源(电力)。这些资源通常是为中位数或更差的尖峰利用率而扩展的,然后被消耗以维持空闲状态。

问问自己,你的应用是否需要一直消耗资源,还是只在应对某些事件时才消耗。无服务器计算可以让你只消耗需要的资源,在不使用时将资源释放回共享池。这可能意味着一个更环保、更节能的解决方案。

AWS和Azure都承诺在国家目标之前实现碳中和或负碳。他们正在投资可再生能源为其数据中心供电。目前,将内部工作负载转移到AWS的结果是碳足迹减少88%。与小型数据中心相比,大规模的无服务器供应商更有条件提出绿色电力的要求,而无服务器可以帮助他们实现这一目标。

4.差异化的价值

COVID-19危机向我们展示了客户的需求如何在如此短的时间内发生巨大的变化。云基础设施已经帮助企业进行了透视,而不必担心基础设施的沉没成本。向FaaS和其他无服务器技术的过渡给了人们更多的自由,可以快速建立和运行规模,而不需要为潜在的负载进行计划和配置。这些技术提供了一种方法来处理应用程序开发中无差别的繁重工作,因此开发人员可以将更多的时间用于产生差异化的价值。与其构建一个已经存在的平台,他们可以把精力放在满足业务需求上。

无服务器技术准备好了吗?

无服务器技术可以带来更快、更环保、更敏捷的部署,有助于让企业专注于提供差异化的价值。他们主张采用事件驱动的设计,可以开创云计算的第三次浪潮。但是,无服务器技术是否已经成熟到可以被采用?

在对Forest Brazeal的采访中,Simon Wardley指出了一个经常听到的抱怨:无服务器还没有准备好。

这些类型的反对意见并不新鲜;它们在XaaS向云计算发展的每个阶段都出现过。人们最初并没有很认真地对待第一批EC2的产品。当EC2最终催生了第一个PaaS时,它成为了IaC的催化剂。不可否认,这是在正确方向上的运动。

对无服务器的最大担忧是其锁定的风险。一旦你承诺使用一个无服务器供应商,就很难迁移到另一个平台。与其完全回避锁定的威胁,不如评估其威胁和影响。如果理想的话,有一些方法可以将你的代码与供应商的API松散地结合起来。

亚马逊、微软和谷歌努力通过改进各自的FaaS产品来解决这些共同的问题。他们继续在解决其余的问题上取得进展。

因此,无服务器正在获得发展势头。在AWS re:Invent 2020的主题演讲中,Andy Jassy(AWS首席执行官)指出,部署到AWS的所有新服务中有一半是在Lambda中部署的。无服务器仍然有一些问题需要解决,但它似乎已经为市场做好了准备。

作为架构师,我们需要以灵活的方式解决新的、复杂的问题。无服务器为我们提供了这样的方法。它只是需要一种新的思维方式。

如果我们想构建这些新系统并提供更大的速度,我们必须专注于用新技术变得更加有效。我们必须以新的方式思考问题。

现在是时候变得更快、更绿、更敏捷了。

首先考虑无服务器

Marc Boudreau

Marc Boudreau是CloudOps的云计算架构师,拥有云计算的开发背景。他特别热衷于帮助人们使用无服务器技术来加速云开发。马克利用空闲时间骑自行车,并期待在秋季和冬季在比利时和荷兰参加越野赛,当这再次成为可能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值