ServerlessBench 2.0发布:华为云联合上海交大,推动 Serverless 基准测评规范化、标准化

华为云PaaS服务小智 发表于 2022/08/03 11:16:32 2022/08/03
【摘要】 首个跨平台的Serverless基准测评系统。

Key Takeaways

1. 华为云联合上海交大,首次提出 Open Serverless Benchmark Initiative (OSBI) ,推动Serverless基准测评规范化标准化

2. OSBI由自定义度量规范 (Metric Specification, MS)自定义基准规范 (Pillar Specification, PS), 自定义模型(Model)组成

3. OSBI发布首个跨平台的Serverless基准测评系统ServerlessBench 2.0, FaaS关键特性,提供丰富的测评基准和指标,发布针对四大开源Serverless平台的首批测评报告

4. OSBI ServerlessBench 2.0服务器无感知创新计划的首个亮相项目, 该创新计划旨在联合产学研用各方,推动通用全场景Serverless技术的发展和规范化建设。

背景

受益于其按用付费 (pay-per-use)、自动弹性伸缩 (auto-scaling)、以及屏蔽后端复杂性的特征,Serverless正成为下一代云计算的新范式 [1]。与此同时,能够封装并兼容多平台、支持关键指标度量的基准测试系统,对于Serverless计算实现可持续的降本增效而言至关重要。一方面,Serverless系统设计者可以利用基准测试平台,刻画系统的关键性能指标,如冷/热启动时延、弹性扩容速度、QoS保证下的最大并发等,为增强系统架构的性能提供 “度量先行”的有效工具;另一方面,Serverless应用开发者可以借助基准测试对不同的Serverless平台进行对比和选择,从而设计并开发出更加高性能、低成本的Serverless应用程序。


Open Serverless Benchmark Initiative

为推动开放、开源、跨平台兼容的Serverless基准测评的规范化、标准化建设,华为云与上海交大联合提出业界首个Open Serverless Benchmark Initiative (OSBI)。OSBI包含两个规范和一个模型定义度量规范 (Metric Specification, MS),自定义基准规范 (Pillar Specification, PS), 自定义模型 (Model), 如图1所示。

图1: OSBI - Open Serverless Benchmark Initiative

其中,自定义度量规范为Serverless特性指标的设计提供了规范化接口和扩展标准;自定义基准规范为测评场景用例的设计提供了标准化模板;自定义模型旨在提供统一的、跨平台兼容的指标设计和用例部署标准,包括多平台的接入标准和基准用例的生命周期管理标准等。同时OSBI支持申明式测评配置以及一键式跨平台对比分析


ServerlessBench 2.0 发布

聚焦FaaS场景,OSBI发布业界首个多平台兼容的Serverless基准测评系统ServerlessBench 2.0。ServerlessBench 1.0是针对Serverless计算的关键特性和指标而设计的基准测试平台,由上海交通大学研究团队发表于云计算顶级会议SoCC 2020 [2]。此次,华为云联合上海交大,在ServerlessBench 1.0的基础上,通过进一步的封装、抽象、扩展和强化,重磅推出OSBI ServerlessBench 2.0,为社区提涵盖12基础性度量基准5大类跨平台度量基准4大类关键特性指标、且多平台兼容Serverless开放测评系统

同时,OSBI ServerlessBench 2.0“服务器无感知创新计划”的首个亮相项目成果。服务器无感知创新计划由中国信通院、上海交大、华为云联合推动落地,旨在链接产学研用各方,凝聚社区力量,围绕技术研究和标准制定等,促进通用全场景Serverless的蓬勃发展和规范化建设[3]。


ServerlessBench 2.0 介绍

ServerlessBench考虑Serverless计算中的四大类关键指标:通信性能(communication performance),启动时延(startup latency),无状态开销 (stateless overhead),和资源使用效率 (resource utilization)。复杂的Serverless应用一般由多个函数组合实现,因此,通信性能指标主要度量函数间通信的效率问题,如常见的函数组合模型sequence chain和nested chain等。Serverless函数通常运行时间较短,大多集中在百毫秒级至秒级的范围[4],且函数执行环境按需加载,自动扩容,因此冷启动、热启动时延开销是Serverless系统和应用最为关注的性能指标之一。在无状态开销指标中,通常包括依赖外部存储服务进行传递的显式状态(如函数逻辑本身所涉及的状态),以及可能影响系统性能的隐式状态(如会话缓存等)。资源使用效率指标主要衡量性价比问题,对于平台,如何在函数混合部署且保证业务QoS的前提下提升资源利用率,对用户而言,如何配置合理的资源规格来使得应用性能和成本之间取得最佳平衡。

围绕四大类关键指标,ServerlessBench提供包括资源需求(Bench Pillar 1-varied resource needs),数据迁移开销(Bench Pillar 5-Data transfer costs), 和 CPU争用(Bench Pillar 12-CPU contention)等在内的12类基准,如表1所示。

表1:ServerlessBench 1.0 提供的12类基准

良好地兼容多平台, 依据OSBI-Model, ServerlessBench 2.0提供了统一的测评接口,对不同Serverless平台之间的异构性进行封装,包括统一的函数接口、统一的返回格式,统一的资源配置,以及统一的依赖包装等,如图2所示。这里以开源Serverless系统为例。

图2:ServerlessBench 2.0的多平台兼容性(以开源Serverless系统为例)

具体以函数调用入口为例,如图3所示,四大开源Serverless平台OpenWhisk,OpenFaaS, Knative,Fission的入口函数都不相同。针对该场景,ServerlessBench 2.0通过接口抽象,封装了统一的入口函数 def handler(event, context)(这里以Python为例),从而使得在跨平台的对比中,无须再关心平台之间的接口差异性。

图3:ServerlessBench 2.0为多平台提供统一的函数调用入口(以Python为例)

在多平台兼容的基础上,遵循OSBI-MS和OSBI-PS规范,ServerlessBench 2.0对表1所列的测试基准进行了扩展,新增了冷热启动开销、冷热执行开销、保证QoS的最大并发、弹性扩容速度、性价比等5大类跨平台基准,如表2所示;同时,更多跨平台基准还在持续更新中,如带有函数链的Serverless应用等。

表2:ServerlessBench 2.0 新增5类跨平台测试基准


首批针对开源Serverless平台的测评结果

作为ServerlessBench 2.0的首批测评结果,我们此次选取四大serverless开源平台OpenWhisk,OpenFaaS,Knative,Fission,作为测评对象,部分关键测评结果展示如下。

1冷、热启动时延

测试从调用 invoke 指令到函数的第一条指令的时间差。图4所展示的结果为 p90 的时延开销。可以看到,OpenFaaS在冷热启动性能上表现最差;得益于资源池预热技术,Fission在冷启动性能上表现最佳。

图4:四大Serverless开源平台“冷、热启动时延”测评结果对比


2. 冷、执行时延

利用 Float Operation,测量函数本身的运行时延,考察冷、热启动对函数执行时间的影响,结果如图5所示。OpenWhisk和OpenFaaS上函数执行时延基本不受冷热启动的影响。但相比于冷启动,Knative和Fission在热启动的情况下,执行时延都有所改善。

图5:四大Serverless开源平台“冷、热执行时延”测评结果对比


3. 请求并发数对QoS的影响

利用 Float Operation,计算不同并发数下函数实例的p90时延,该用例度量的是平台的函数密度支持能力。从图6可以看到,除Fission外,其它三大平台上,随并发请求数的增长,函数实例的p90时延基本呈线性增长。同“冷、热启动时延”的结果相似,由于Fission预置了一部分通用资源池,在并发请求数增长的初期,函数p90时延没有明显增长;但随着并发数的继续增长,资源池被逐步消耗,直至需要进行补充时,时延出现显著增长。

图6:四大Serverless开源平台“请求并发数对QoS的影响”测评结果对比

这里需要指出,在各大云服务提供的Serverless或函数系统中,请求并发数对函数执行时延或业务QoS的影响是一个更加复杂的过程,还包括其它多个影响因素,如单实例并发数,最大并发实例数限制,平台扩容策略,实例调度策略等。


4. 弹性扩容能力

利用 Float Operation,测试并观察实例数量从1伸缩到某个较大值的过程中,多实例启动尾时延的大小。图7展示OpenFaaS和Knative从1个实例弹性扩容到10个实例的结果。

图7:OpenFaaS和Knative “弹性扩容能力”测评结果对比


5平台性价比

利用Numpy Matmul,逐步调整给函数所分配的资源数量,测量并观察资源数量对函数的执行时延(图8)与函数实例成本(图9)的影响。该用例反映的是相同资源开销下,函数在不同Serverless平台上的性能表现。图8和图9展示了在OpenFaaS和Knative上的部分结果。

    图8:OpenFaaS和Knative“平台性价比:资源与执行时长”测评结果    

图9:OpenFaaS和Knative“平台性价比:资源与实例成本”测评结果


未来规划

OSBI及其ServerlessBench 2.0建立在开源开放的理念之上,将由社区共同运营并持续共建。华为云将继续联合上海交大,推出包括华为云FunctionGraph在内的各大公有云服务Serverless平台的测评报告,并贡献给社区。另外,我们正在为OSBI和ServerlessBench 2.0建立项目主页,并推动源码开源等工作。关于ServerlessBench 1.0的详细信息,可参见项目主页[5]和github主页[6]。

此次OSBI和ServerlessBench 2.0的发布,旨在联合社区共建Serverless基准测评的规范与标准。华为云结合自身丰厚的技术积累与多年的发展经验,积极参与、主导相关技术及其服务的规范建设和标准制定, 如FunctionGraph与CNCF Serverless Workflow携手开拓Serverless编排新时代[7]。同时,我们期待与更多的Serverless爱好者及从业人员共同推动OSBI和ServerlessBench 2.0的繁荣发展。


参考链接:

[1]. Schleier-Smith, et al. (2021). What serverless computing is and should become: The next phase of cloud computing. Communications of the ACM, 64(5), 76-84.

[2]. Yu, T., et al. (2020). Characterizing serverless platforms with ServerlessBench. In Proceedings of the 11th ACM Symposium on Cloud Computing (pp. 30-44).

[3]. https://mp.weixin.qq.com/s/vuhqCweenT7sozNzInavyQ

[4]. Shahrad, M., et al. (2020). Serverless in the wild: Characterizing and optimizing the serverless workload at a large cloud provider. In 2020 USENIX Annual Technical Conference (USENIX ATC 20) (pp. 205-218).

[5]. https://serverlessbench.systems/

[6]. https://github.com/SJTU-IPADS/ServerlessBench

[7]. https://bbs.huaweicloud.com/blogs/336135

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。