如何评估Serverless服务能力,这份报告给出了40条标准

简介:现在,已经有评测机构给出了40条标准来对Serverless的服务能力进行评估,这些评估细则既是技术生态繁荣发展的一种表现,也能够做为新进入者评估Serverless落地成效的一种参考依据。

编者按:两年前,咱们还在讨论什么是Serverless,Serverless如何落地。现在,已经有评测机构给出了40条标准来对Serverless的服务能力进行评估,这些评估细则既是技术生态繁荣发展的一种表现,也能够做为新进入者评估Serverless落地成效的一种参考依据。 数据库

在 Forrester 的这份函数即服务 (FaaS) 平台评估报告中,咱们选择了阿里巴巴、亚马逊、谷歌、华为、IBM、微软、Nimbella、甲骨文和腾讯这 9 家最具影响力的提供商,并依据 40 条标准对其进行了研究、分析和评分。该报告展现了每一个提供商在各方面的表现,旨在帮助从事应用程序开发与交付 (AD&D) 的专业人士找到最符合自身需求的提供商。 编程

Forrester Wave™:函数即服务 (FaaS) 平台 2021 年第一季度报告

FaaS 平台帮助开发人员快速建立云原生服务  

FaaS 平台的抽象化让开发人员再也不须要关注复杂的容器或虚拟机集群管理与扩容工做,从而能够快速建立云原生微服务。将底层基础架构的管理工做交给 FaaS 提供商以后,开发人员就能够在编程环境中,使用 Java、C#、JavaScript 或 Python 等熟悉的语言,将微服务编写成简单的小函数。而后,FaaS 提供商会根据服务要求,自动对这些微服务进行扩容或缩容。使用 FaaS 平台的开发人员表示,经过免于基础架构管理,借助抽象化消除与此相关的复杂操做后,他们能够迅速将新的想法推入部署阶段,同时能够根据执行微服务的实际资源需求来肯定基础架构费用。在挑选 FaaS 提供商时,开发人员应分析该提供商是否具有如下条件: 安全

  • 支持函数和容器打包。随着开发人员将愈来愈多类型的工做负载部署到 FaaS 平台,FaaS 平台应容许开发人员简单地将一个函数打包成 ZIP 或 JAR 文件并加以部署,或者将自定义代码打包成符合开放容器标准 (OCI) 的容器,并部署与之对应的框架。FaaS 平台应同时支持这两种选项,才能在开发部署 Web、内容和事件驱动的工做负载方面为开发人员提供最大的灵活性。 
  • 提供健壮的安全功能。随着开发人员不断扩大对 FaaS 平台的运用范围,确保相关人员可以以安全的方式访问被封装到虚拟私有网络,或虚拟私有云 (VPC) 中的数据和应用程序接口 (API) 就变得很是重要。另外在函数扩缩容的同时,相关人员还须要可以快速接入这些资源,而无需等待耗时的“冷启动”。 
  • 支持第三方生态系统和开放标准。除非您愿意彻底依赖一家公有云提供商,不然您就应选择平台集成更为便利的 FaaS 提供商。您须要关注的功能包括第三方可观测性、事件绑定和消息协议等。 

评估摘要 

本次 Forrester Wave™ 评估报告将待评估对象分别纳入“领导者”(Leaders)、“强劲表现者”(Strong Performers)、“竞争者”(Contenders) 和“挑战者”(Challengers) 这几个象限。这是对市场头部厂商的评估,并不表明市场的总体状况。您能够查看咱们关于无服务器架构 (Serverless) 技术的报告,获取有关这个市场的更多信息。咱们但愿这份评估报告只是一个起点,建议客户使用基于 Excel 的厂商比较工具来查看产品评估并调整标准权重(请参见图 1 和图 2)。点击 Forrester.com 上网页版报告开头的连接便可下载上述工具。 服务器

1617176952017-ea39e68f-0875-49cb-a24d-b295f3ba5a0b.jpeg

图 1 《Forrester Wave™:函数即服务 (FaaS) 平台,2021年第一季度》评估结果  微信

* 灰色圆圈表示未参与 Forrester 评估的厂商 网络

20210602134419.jpg

图 2 《Forrester Wave™:函数即服务 (FaaS) 平台,2021年第一季度》评分 架构

全部评分采用 0(弱)到 5(强)分制并发

* 表示未参与评估的厂商 框架

各厂商的产品less

Forrester 这次共评估了 9 家厂商的产品:阿里巴巴、亚马逊、谷歌、华为、IBM、微软、Nimbella、甲骨文和腾讯(见图 3)。 

20210602134713.jpg

图 3 本次评估的厂商和产品 

厂商概况 

经过分析,咱们发现各厂商有如下优点和不足之处。 

领导者 

  • 亚马逊在地域覆盖、生态系统广度和执行稳定程度等评分项上处于领先。在 2020 年的 Forrester Wave™ 报告中,咱们提到 Lambda 在地域可用性、客户采用率、开发人员部署函数的体验以及对生态系统的支持等方面均有出色表现。这些优点也延续到 2021 年。除此以外,诸如对亚马逊 Elastic File System (EFS) 的支持,运行符合 OCI 标准的容器的能力以及精确到 1 毫秒的计费粒度等功能让 Lambda 在创新之路上不断前进,让更多类型的工做负载适用。对无服务器架构安全性和特殊工做负载的强大支持让 Lambda 在 2021 年依然保持着领导地位。亚马逊认为 FaaS 工做负载的生命周期应该是短暂的,承认这一观点的开发人员会发现,Lambda 为他们提供了一个强大的FaaS 平台。该平台正逐步支持第三方工具和以容器为中心的部署过程。该平台还针对状态管理、数据库操做和 API 等细化功能提供独特的服务。

参考客户对 Amazon Web Services(亚马逊云计算服务,简称 AWS)Lambda 给予了很高的评价,认为该平台可提供一流的客户支持,性能出色,并集成各类 AWS 服务和第三方服务。在与经验丰富的业内人士保持紧密合做方面,该产品也获得了客户的一致赞扬。参考客户认为该平台在可观测性上还有改善空间,并指望其能为开发人员提供更多简化的工具。AWS Lambda 最适合异步运行的临时工做负载,包括集成其余 AWS 服务、物联网、批处理、新 Web 应用以及事件驱动集成。 

  • 阿里巴巴使用容器和开放标准来加速 Web 和内容工做负载。在 2020 年的报告中,咱们将阿里巴巴函数计算 (Function Compute) 描述成“一个强健的通用平台”。2021 年,咱们发现该平台对容器以及开源项目和标准,包括 OpenTracing、OpenTelemetry、Grafana 和 Jaeger 的支持使其能力获得进一步提高。加上该平台为支持主流 Web 框架、之内容为中心的工做负载、1 毫秒计费粒度以及运行时方面的投入,咱们此次将阿里巴巴函数计算归入 FaaS 市场“领导者”象限。阿里巴巴函数计算特别适合须要处理大量视频的工做负载,并利用以容器为中心的模型来实现函数并发。对于有此类需求的客户,该平台是上佳之选。 

参考客户对阿里巴巴函数计算在中国 ISV 生态系统中的事件集成能力赞扬有加,并对其在圣诞节和新年等节日期间增强客户支持的作法给予了高度评价。在技术方面,客户对于能够在几分钟内扩容到数万个实例的能力深表满意。参考客户但愿该平台可以在远程调试方面提供更好的编程语言支持,并改进对于 GPU 计算的支持。虽然该平台目前最适合在香港或中国大陆部署工做负载的公司,但它的国际覆盖面正在扩大,目前已支持 10 个地域,共有 21 个可用区。 

  • 微软 Azure Functions 为高级计划保留了重要的企业级功能。Azure Functions 的消费计划支持多种编程语言和有状态的持久函数 (Durable Function),但若是想要使用预留实例、对 Docker 容器的支持和强大的安全功能,开发人员就须要升级到高级的专用计划,即 Azure App Service 计划。持久函数提供有状态的功能并支持和 Azure Event Hub 绑定,而 Azure Event Grid 可帮助开发人员构建事件驱动微服务。今年,微软经过加大投入,改进了新用户引导、为开发人员提供更多工具以及支持在本地计算机上进行开发和调试,在开发人员体验这个标准上表现突出,获得了最高评分。

参考客户高度承认 Azure Functions 与 Key Vault 等其余 Azure 服务相集成以实现机密存储的能力,并特别提到其强大的内置可观测性。Azure Functions 的性能和服务质量也让客户广泛感到满意。可是,客户若是要使用 VPC 服务和预留实例等重要的企业功能,就不得不选择费用更高的高级服务计划,这一点是客户集中抱怨的地方。对于须要其余 Azure 服务或一个覆盖全球的 FaaS 平台的客户而言,Azure Functions 是最合适的解决方案。但若是您的团队想构建或集成企业级工做负载,就须要升级到高级版的应用服务计划。 

强劲表现者 

  • 腾讯云函数 (SCF) 平台优化了以云为中心的开发。腾讯打造了一套出色的基于 Web 的工具来进行函数开发,并将其与可靠的运行时相结合,支持多种编程语言、复杂的工做流程和运行时间更长的函数实例。开发人员能够预留函数实例,另外腾讯也为人工智能 (AI) 工做负载和特定的行业云提供专业支持。SCF 还可做为微信生态系统的扩展机制,有效帮助各企业经过微信扩展功能与客户进行互动。但对于但愿进行本地函数开发和调试的开发人员来讲,腾讯以云为中心的开发理念与他们契合度不高。

参考客户对于 SCF 的性能,客户支持和工做负载执行低成本给予了高度评价。客户同时表达了对该平台稳定性的担心,并但愿经过更多内置事件触发器来使用更多来自腾讯和第三方的云服务。对于须要在中国部署 FaaS 服务、与微信进行集成和扩展以吸引更多客户并接受以云为中心的开发方法的客户来讲,腾讯 SCF 是一个不错的选择。 

  • Nimbella 经过“FaaS 无处不在”的方法全面支持混合云。与 IBM Cloud Functions 同样,Nimbella 基于开源 Apache OpenWhisk 项目。Nimbella 拥有一个简单快速的开发人员入门流程,同时它的运行时既能够在纯 FaaS 模型下使用,也能够做为可安装的函数平台部署到其余公有云上,更能够本地部署。Nimbella 经过强大的容器支持、容许使用多种编程语言以及可配置的函数最大运行时间设置来实现“FaaS 无处不在”。这样的一款 FaaS 解决方案很是适合须要长期运行的有状态函数。该平台尽管具备很高的灵活性,但有些问题仍需注意。它的托管解决方案为租户提供了内置隔离功能,而可安装的解决方案则支持混合部署,团队可根据不一样的组织需求和安全策略作出具体调整。所以,选择混合部署的团队可能要花费更多的时间来配置生产环境的基础设施。

参考客户对 Nimbella 在客户支持和帮助实施最佳实践方面的表现给予了高度评价。客户还将最小化厂商锁定风险做为选择 Nimbella 的一个缘由。客户关心的问题包括安全性和可观测性,同时但愿经过增长代码示例和数字内容来加快上手速度。对于采用混合 FaaS 解决方案,并但愿在无服务器架构平台基础上提供本身的网络和集成功能的开发团队而言,Nimbella 是一个很合适的解决方案。另外若是相比基于用量的订价模式,您更想按月付费或选择企业协议,Nimbella 的许可模式也是最有吸引力的方案。 

  • 谷歌以 Cloud Functions 和 Cloud Run 打造“全方位”解决方案。从谷歌的 FaaS 产品能够看出,随着公有云提供商将容器和 Kubernetes 平台做为 FaaS 运行时的关键平台引擎,多个 FaaS 平台开始迈向转型。谷歌的 Cloud Functions 支持常见的函数打包和部署,其运行时能够很好地扩展和缓慢冷却,而且谷歌 Cloud Ops 集成功能也确保了出色的可观测性。利用谷歌 Cloud Run,开发人员能够将函数与谷歌的 Functions Framework 打包在一块儿,使用 Knative 进行部署,并在混合部署场景中运行。与 2020 年的评估结果相比,该平台对编程语言的支持也有所增强。 

参考客户在性能和简易性方面为谷歌给出了很高的评分,并称赞了 Cloud Functions 的安全性和可扩展性。此外,产品管理和客户支持团队的直接参与和支持也获得了客户的一致承认。有待改进的地方包括:更好地支持将第三方库与函数打包(比方说用于处理 Kafka 消息),以及 Cloud Functions 运行时的依赖项的透明度须要增强。若是您想在全球范围内部署应用,并在混合 FaaS 部署场景中从函数平稳过渡到容器,谷歌 Cloud Run 应该是您的合适选择。 

  • IBM 完善了 Cloud Functions 并准备推出 Code Engine。IBM Cloud Functions 基于开源 Apache OpenWhisk 项目。它添加了内置的 API 网关,良好的事件流支持以及强大的容器级函数隔离等功能。从本次评估结果来看,IBM 在服务等级协议条款和可用性上优于其余任何一家厂商。但 Cloud Functions 在某些方面仍有待改善,好比网络隔离选项有限以及对预留函数实例的支持等。在 2020 年的评估中,咱们曾指出 IBM 在收购红帽 (Red Hat) 以后,须要创建一套统一的函数运行时策略。IBM Cloud Code Engine 彷佛将承担这一任务。虽然还没有进入通常可用 (GA) 阶段(所以没有包含在咱们的分析中),但 Code Engine 已经将对 Kubernetes 和 Knative 的支持加入 IBM 的 FaaS 策略。

IBM 的函数实例快速自动伸缩和计算型工做负载的高度并发得到了参考客户的一致承认。其余客户指出对 OpenWhisk 的支持实现了可移植性,从而下降了厂商锁定的风险。须要改进之处包括完善编排、可观测性以及对预留函数实例的支持。IBM 老客户会发现 Cloud Functions 很是适合集成他们的工做负载,而它对多种编程语言的普遍支持也能有效帮助大多数开发人员顺利转向无服务器架构。进入 GA 阶段后的 IBM Cloud Code Engine 也值得期待,尤为是对于正在投资基于 Kubernetes 的基础架构,并但愿将函数归入打包对象的客户而言。 

竞争者

  • 甲骨文将安全性、容器和事件驱动集成放在首位。咱们在 2020 年分析甲骨文 Cloud Functions 时,认为该平台相对较新,评估结果也体现了这一点。2021 年,甲骨文的这个 FaaS 平台已从“挑战者”象限升级到“竞争者”象限。甲骨文 Cloud Functions 基于开源 Fn 项目,函数被打包成 OCI 容器。甲骨文在创建这个 FaaS 平台时,主要侧重“设计安全”(secure-by-design) 模式,这一作法也符合许多企业开发团队的需求。默认状况下,函数实例仅在客户虚拟云网络的子网内可用。与其余一些 FaaS 厂商不一样,甲骨文的私有云支持功能不收取额外费用。所以,甲骨文在北美、欧洲、亚洲和拉丁美洲的采用率都在稳步提高。

参考客户对甲骨文 Cloud Functions 的性能、易用性、开发时间、文档深度和整体执行成本给出了很高的评分。不足之处体如今须要拿出替代方案来解决偶尔出现的延迟问题,其可能缘由是目前缺少对预留实例的支持。甲骨文 Cloud Functions 很是适合使用其余 OCI 服务的企业。另外该平台目前已开放 23 个地域,可帮助客户在全球范围内实施部署。 

挑战者  

  • 华为的函数工做流 (FunctionGraph) 虽然刚刚进入市场,但却有至关不错的前景。函数工做流平台还处在逐步发展的阶段,但咱们在评估过程当中发现,该平台凭借对开发工具、本地开发和事件驱动集成的有力支持,已达到市场平均水平。该平台可执行最长运行时间达 15 分钟的函数,并支持 Node.js、Java、Python、Go,C# 和 PHP 等多种编程语言。做为市场上的一个新面孔,这个平台还存在一些不足。好比,文档尚不完善、对特殊工做负载的支持较差、对集成的支持不够。部分地区内的可用性也有限。所以,咱们认为华为的函数工做流平台最适合想要在中国,或者巴西、智利、墨西哥、新加坡、南非或泰国等华为云提供区域支持的国际市场上部署工做负载的开发人员。华为拒绝参与完整的 Forrester Wave™ 评估流程。

评估报告概述

咱们严格依照 40 条标准对厂商进行了评估,这些标准可划分红三大类: 

  • 当前产品。每一个厂商在 Forrester Wave™ 象限图纵轴上的位置表明其当前产品功能的表现。评估这些解决方案的关键标准包括开发人员的体验、编程模型、运行时执行环境和安全功能。
  • 战略愿景。横轴上的位置表示厂商在战略上的表现。咱们评估了 FaaS 平台提供商的愿景、执行能力、生态系统、参与度和订价策略。
  • 市场占有率。经过图上圆圈的大小来表示。咱们的市场表现评分体现的是每一个厂商的地理分布、客户群规模和产品收入。 

厂商入选标准  

Forrester 本次共评估 9 家厂商:阿里巴巴、亚马逊、谷歌、华为、IBM、微软、Nimbella、甲骨文和腾讯。他们均符合如下条件: 

  • 拥有 FaaS 平台。每家厂商都有一个客户能够随时使用并运行生产性工做负载的 FaaS 平台。
  • 曾参与 Forrester 的 Now Tech 无服务器架构提供商评估。FaaS 平台是经过无服务器的架构来打造云原生应用的关键组成部分。咱们在 Forrester 的《Now Tech:无服务器架构,2021 年第一季度》报告中详细介绍了开发人员能够选择的无服务器架构。

补充材料  

在线资源 

咱们将全部 Forrester Wave™ 评分和权重整理成一份 Excel 文件,包含详细的产品评估并支持自定义排序。点击 Forrester.com 上网页版报告开头的连接便可下载该文件。咱们但愿这些分数和默认权重仅是一个切入点,建议读者根据我的须要来调整权重。 

Forrester Wave™ 的评估方法  

Forrester Wave™ 报告为组织在技术市场上购买产品提供了指南。为确保对全部参与者的公平,Forrester 遵循“Forrester Wave™ 方法指南”来评估参与的厂商。在该评估过程当中,咱们先进行初步研究,挑选出供以后评测的厂商。而后依据入选标准,进一步筛选并肯定最后名单。接着经过详细的问卷调查、演示/简报,以及参考客户调查/采访来收集有关产品和战略的详细资料。最后将这些信息,结合分析师的行业经验和专业知识,经过将一家厂商与参与评估的其余厂商进行对比的相对评分系统,来对厂商进行评分。咱们在每份 Forrester Wave™ 报告的标题中都清楚地指明该 Forrester Wave™ 的发布日期(年份和季度)。在本次 Forrester Wave™ 报告的评估过程当中,咱们采用了厂商在 2021 年 1 月 21 日以前提供给咱们的材料,不接受这个日期以后提供的其余信息。咱们但愿读者能去分析随时间变化,市场和厂商产品出现了怎样的变化。根据“Forrester Wave™ 和 New Wave™ 厂商审核政策”,Forrester 要求厂商在报告发布以前审核咱们的评估结果,以确保准确性。在 Forrester Wave™ 象限图中被标记为未参与评估的厂商符合咱们所定义的入选标准,但拒绝参与或仅部分参与本次评估。咱们根据“Forrester Wave™ 和 Forrester New Wave™ 未参与和不彻底参与厂商政策”,对这些厂商进行评分,并将他们与参与评估的其余厂商一块儿列入象限图。 

诚信准则  

咱们全部的研究,包括 Forrester Wave™ 评估,均遵循咱们网站上发布的“诚信准则”。 

报告原文连接:

https://reprints2.forrester.com/#/assets/2/1948/RES161673/report

本文内容由阿里云实名注册用户自发贡献,版权归原做者全部,阿里云开发者社区不拥有其著做权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。若是您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将马上删除涉嫌侵权内容。
相关文章
相关标签/搜索