函数计算 2.0 重磅发布,Serverless Computing 开启新篇章

本文涉及的产品
函数计算FC,每月15万CU 3个月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: 随着云计算技术的深入发展,无服务器架构正在兴起。2019 年 2 月,加州大学伯克利分校发表了名为《Cloud Programming Simplified: A Berkerley View on Serverless Computing》的论文,对 Serverless 的形成、现状以及未来进行了全面的梳理和总结,指出 Serverless 即将成为下一代云服务的主流形态。

pic.png

随着云计算技术的深入发展,无服务器架构正在兴起。2019 年 2 月,加州大学伯克利分校发表了名为《Cloud Programming Simplified: A Berkerley View on Serverless Computing》的论文,对 Serverless 的形成、现状以及未来进行了全面的梳理和总结,指出 Serverless 即将成为下一代云服务的主流形态。值得一提的是,在 2009 年的 《Above the Clouds: A Berkeley View of Cloud Computing》 一文中,伯克利所预测的当时云计算所面临的挑战将会被逐一解决,云计算将会繁荣昌盛起来,如今已一一实现。

Serverless Computing,顾名思义是无服务器计算,无服务器计算将用户从繁琐的底层设备管理和运维配置工作中解放出来,只需关心业务逻辑,这种模式极大地降低了研发门槛,提升业务构建效率,获得了大量开发者的青睐。

尽管无服务器计算带来了极其令人振奋的开发模式,但随之而来的限制阻碍着开发者将更多的应用迁移到无服务器计算平台。

  1. 性能毛刺
    无服务器计算由服务提供方动态分配实例,准备执行环境,实例的伸缩带来了不可避免的延时波动,影响应用性能。
  2. 价格昂贵
    为了保障无服务器应用的弹性伸缩,无服务器计算平台需要维护充足的计算资源,用户势必要为足够的弹性带来的更高单价买单。昂贵的价格阻碍着调用量平稳的大应用迁移至无服务器计算平台,也极大的限制了无服务器计算的应用场景。
  3. 迁移改造代价大
    无服务器计算要求用户按照服务提供放规定的统一接口开发函数,开发者需要针对接口重新进行开发,很难平滑地完成业务迁移。
  4. 工具不完善
    无服务器计算缺少成熟的开发者生态和上下游支持。简单易上手的调试、部署工具的缺失无形中提高了开发门槛;监控报警系统的不完备不直观又降低了开发者对应用的掌控力度。

针对企业应用难以全面迁移至无服务器计算的问题,阿里云进行了持续的探索和研究。阿里云无服务器计算服务 函数计算(Function Compute) 为以上问题交出了答卷!

函数计算 2.0 引入了丰富的资源类型,全新的计费方式,灵活的自定义运行环境和全方位升级的工具链,为开发者消除迁移至函数计算的顾虑,为应用的全面迁移扫清障碍!

1 . 丰富的资源类型

全新推出 预留实例 功能,支持按量实例和预留实例两种实例类型。

按量实例是指函数实例的分配和释放完全由函数计算系统负责,有函数调用请求时,函数计算动态调度资源,为用户提供弹性可靠的执行环境。但是资源的动态调度不可避免地存在冷启动延时,对于时延敏感的在线业务有一定影响。

预留实例将函数实例的分配和释放完全交由用户管理。通过预留实例,用户能提前预热函数或者长期保持常驻实例,消除实例伸缩带来的延时波动。

根据业务场景,用户既可以单独使用按量实例或预留实例,又可以混合使用两种实例。当混合使用按量和预留实例时,函数计算保证优先使用预留实例。当请求的并发度超过预留实例所能提供的并发度时,函数计算会动态调度按量实例,轻松应对业务的波峰波谷!

使用相同压力对机器学习场景的 猫狗识别器 进行测试,使用预留实例与不使用预留实例的表现效果如下:

由于机器学习的模型很大,冷启动加载代码包需要耗时 20s 左右。

  • 只使用按量实例时,函数执行耗时有明显毛刺。
    无预留毛刺.png
  • 使用预留实例,且请求所需实例数小于预留实例数时,函数执行时延相对平稳,基本维持在百毫秒内。
    预留压测.png

组合使用按量实例、预留实例,可以有效保障应用的性能稳定。

2 . 全新的计费方式

函数计算提供了预付费和后付费两种计量模式,帮助用户在不同场景下获得显著的成本优势。

预付费 是指用户先判断应用的资源需求,预先购买指定数量的资源消费券后再使用,单价相较于后付费降低 70%!后付费则是根据实际使用的资源按需付费。

建议开发者观察应用的负载情况,针对负载中稳定的部分使用预付费功能预购计算力,预付费计算力可以抵扣实际使用的计算力,预付费计算力无法抵扣的部分使用后付费计费。

灵活使用预付费、后付费计费方式,可以大幅优化成本,节约上云开销。

下表介绍了预留实例的规格和定价:

预留实例规格 计算力(CU) 预付费单价(元/CU-秒) 后付费单价(元/CU-秒) 预付费单价(元/CU-小时) 后付费单价(元/CU-小时)
0.67 vCPU,1024 MB 内存 1 0.00003167 0.00011108 0.114 0.4
1 vCPU, 1536 MB 内存 1.5 0.000047505 0.00016662 0.171 0.6
1.33 vCPU,2048 MB 内存 2 0.00006334 0.00022216 0.228 0.8
1.67 vCPU,2560 MB 内存 2.5 0.000079175 0.0002777 0.285 1
2 vCPU,3072 MB 内存 3 0.00009501 0.00033324 0.342 1.2

3 . 全方位升级的工具链

为了协助开发者更好地开发、调试、部署无服务器应用,函数计算的工具链做了很多努力,希望在函数的开发部署过程中兼有开发者以往的开发调试体验。
工具链家族目前包含资源编排工具 Funcraft,图形化开发调试工具 VSCode 插件 与集成开发环境 WebIDE

  • Funcraft 是函数计算的应用部署工具,可以帮助用户快速地构建基于函数计算的弹性高可用无服务器应用。

    • fun deploy 可以一键部署应用到云端,真正实现 “一行命令,一触即发”。
    • fun local 在本地完全模拟云端运行环境,提供单步调试功能,可以更快地定位问题。
    • fun install 将依赖包的安装能力固化到工具中,方便地为用户安装第三方依赖。
  • Aliyun Serverless VSCode Extension 是一款基于 VSCode 的开发调试工具,VSCode 插件是使用传统开发工具开发者的好帮手。

    • VSCode 插件帮助用户,像开发本地应用一样开发云函数。调试/运行完全符合用户的以往的开发认知,拉近了本地与云端的距离。
      vscode.gif
  • WebIDE 是一个基于 H5 支持多语言的集成开发环境。已经与 函数计算控制台 深度集成,提供与 VSCode 体验一致的网页版编辑器。

    • 支持文件树的查看,拖拽上传/移动文件
    • 支持与 VSCode 一致的快捷键、代码编辑器、命令面板等。

增强的 Funcraft ,便捷的 VSCode 插件,全新的控制台 将有效解决用户调试难,打包难,部署难的痛点,显著提升应用开发和运维效率,大幅提高用户体验。

4 . 灵活的自定义运行环境

函数计算最新支持 Custom Runtime,完全由用户定义函数的运行环境。
用户即可以基于自定义运行环境定制个性化语言的执行环境,例如函数计算官方推出的 基于 Custom Runtime 打造 golang runtime

又可以将现有的 Web 应用不做任何改造,一键迁移至函数计算,轻松构建弹性高可用的 Serverless Web 应用。

5 . 复杂状态管理

函数计算拓展了单一云服务的边界,函数工作流拓展了函数计算的边界
函数计算集成了13个云服务,让这些事件源的数据处理变得空前容易。用户可以利用事件触发机制构建松耦合的分布式应用。新发布的函数工作流让用户在 Serverless 的道路上更进一步,让无状态的函数也可以构建有状态的,长时间运行的,多步骤的复杂应用。函数工作流在编排函数的同时也可以通过事件触发和回调机制编排运行在任何地方的分布式任务,触达函数尚未触达之地,让应用构建博采众长。

函数计算 2.0 以用户为中心,持续不断的优化性能、降低成本有效地解决了无服务器计算中难以避免的性能毛刺,价格昂贵,迁移成本高等问题,有效提高用户体验,拓宽无服务器计算的使用场景,为应用大规模迁移至无服务器计算扫清障碍!

至此,无服务器计算的前景更加明朗,Serverless Computing 开启新的篇章!

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
2月前
|
消息中间件 运维 Serverless
函数计算产品使用问题之如何部署Stable Diffusion Serverless API
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
2月前
|
运维 前端开发 Serverless
Serverless痛点解决问题之将 WordPress 工程部署到函数计算中如何解决
Serverless痛点解决问题之将 WordPress 工程部署到函数计算中如何解决
38 1
|
2月前
|
存储 运维 Serverless
Serverless 支撑赛事转播问题之利用函数计算实现图片处理的实时性和成本节约如何解决
Serverless 支撑赛事转播问题之利用函数计算实现图片处理的实时性和成本节约如何解决
|
2月前
|
消息中间件 运维 Serverless
Serverless 支撑赛事转播问题之利用函数计算处理视频直播截帧服务如何解决
Serverless 支撑赛事转播问题之利用函数计算处理视频直播截帧服务如何解决
|
2月前
|
JavaScript Serverless
Serverless 架构问题之Midway FaaS开源框架的设计如何解决
Serverless 架构问题之Midway FaaS开源框架的设计如何解决
31 0
|
2月前
|
Serverless 数据安全/隐私保护 开发者
Serverless 架构问题之阿里云函数计算在事件生态层面如何解决
Serverless 架构问题之阿里云函数计算在事件生态层面如何解决
37 0
|
2月前
|
Serverless 测试技术 Go
Serverless 函数计算问题之无法压测如何解决
高德在函数计算压测中发现单实例TPS达300时延迟剧增,通过登录实例使用profiling工具定位到性能瓶颈并完成优化。在Go的custom runtime中执行`go tool pprof`需先确保Go环境安装,再运行命令进行CPU分析。产生的分析文件可通过ossutil64上传至OSS存储,以便进一步分析处理。[详细解答链接](https://developer.aliyun.com/ask/666283)。
33 0
|
2月前
|
监控 Serverless API
Serverless 函数计算问题之环境变量不生效如何解决
在函数实例详情页面登录实例的方法是在“监控指标-实例指标”区域点击特定实例ID进入详情页,之后在右上方找到并点击“登录实例”按钮即可开始操作。使用Golang SDK调用`InstanceExec` API执行命令并通过回调处理输出的具体方式为:首先构建`InstanceExecInput`对象设置服务名、函数名、实例ID及命令
40 0
|
2月前
|
Kubernetes Serverless API
Serverless阿里云函数计算问题之使用示例如何解决
本文探讨了Serverless场景下实例Exec功能的关键特性及其与K8S和Docker的主要区别:实例Exec仅适用于存活实例,且请求不占用并发度,被视为InvokeFunction调用并据此计费。此外,还介绍了阿里云函数计算中实例Exec功能的使用方法,包括通过控制台、API及CLI工具的操作流程,并详细解释了WebSocket连接对计费的影响以及如何在控制台上登录函数实例进行问题排查的具体步骤。
44 0
|
1月前
|
人工智能 自然语言处理 Serverless
阿里云函数计算 x NVIDIA 加速企业 AI 应用落地
阿里云函数计算与 NVIDIA TensorRT/TensorRT-LLM 展开合作,通过结合阿里云的无缝计算体验和 NVIDIA 的高性能推理库,开发者能够以更低的成本、更高的效率完成复杂的 AI 任务,加速技术落地和应用创新。
120 14

相关产品

  • 函数计算