Serverless应用案例

本文涉及的产品
函数计算FC,每月15万CU 3个月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: 随着云计算的发展以及传统行业的转型,不断提高的技术要求与日益旺盛的市场需求使传统的应用软件开发模式面临挑战。同时,人们正在探索新一代的更经济、更有潜力的云服务模式。无服务器计算依托容器技术,提供了高并发、高兼容的特性,为开发者隐藏了底层服务器的细节,同时采取了更经济的按调用次数或时间计费的服务运营模式,引起了广泛的关注。

     基于轻量化低时延和高并发等特点,Serverless带来了开发方式与科研应用的创新,在软件工程大数据处理科学计算机器学习和物联网IoT等领域得到了许多实践与研究本文将展开叙述。

1 应用案例

1.1 Serverless与新型系统开发

     经典Serverful模式主要有客户端服务器 C(ClientService和浏览器服务器 (BrouserService人机交互由 端负责,应用业务由端的单体应用提供。

     传统单体应用往往耦合度高、迭代与维护难度大专业性要求高当前面临创新的需要受限于

移动设备的算力与能耗,移动即时应用面临轻量化和低能耗要求为了应对数据的汇总、监控和分发等需求管理信息系统有着实时性能敏感、系统组成复杂等特性。随着产业转型与新增需求的推动众多旧应用将面临改造或重构,成本低廉的Serverless服务被各类社会部门所采纳。

     此外,随着互联网应用与大数据的规模不断扩大人们面临更严峻的数据孤岛现象,尤其体现在传统文化创新设计和现代科教等众多细分领域。为了打通数据孤岛,充分挖掘这些细分领域大数据的价值,人们有着强烈的在细分领域建设大数据平台的需求以往构建大数据平台耗时长、成本高昂且专业要求高Serverless的出现为各类细分领域大数据平台的建设带来了机遇,使得从业者能更快速更经济更容易地构建大数据平台

                                        1659611380353.png

1.2 Serverless与大数据处理

     大数据最显著的特征是持续扩大的数据规模及其复杂度这对传统数据处理系统提出了挑战。为了解决吞吐率及算力瓶颈,除了纵向增加单台计算机的算力研究人员还尝试以横向拓展的方式,组织分布式计算集群来处理数据。MapReduce是该类模型中最经典的模型之一,其核心思想是先切割数据集再执行多线程并发处理,降低单次作业的数据规模以提升系统总体数据处理性能。传统场景中研究人员不仅要设计算 法,还 要额外安排大量时间管理众多设备负责进程管理、负载均衡和 系 统 容 错 等 细 节因此,研 究 人 员尝试借助Serverless改变这一现状,通过云端实现数 据 集、算 法 代 码 和 运 行 环 境 的 显 式 管理同时Serverless的高并发特性免去了数据处理程序中复杂的多线程配置提出,在应对实时系统、物联网等数据密集型场景下动态连续的数据流时,同样可以先将数据流转换成有序且有界的数据块再执行数据处理作业。先 对 数 据 集 进 行 切 割 然 后 再 通 过 Serverless并发处理的思路可以推广到超大型文件处理领域,相 关 的 研 究 与 实 践 还 有Netflix 视 频 转 码 系统可编程式视频处理框架Sprocket、生化数据DNARNA 序列分析平台和高吞吐文件处理应用

1.3 Serverless与科学计算

     科学计算涉及数学计算、数字仿真建模和高性能计算等课题具有高精度、高吞吐和高并发的需求为了降低软件工程开发难度,研究人员把目光投向了Serverless技术。矩阵运算是常见的数学求解问题N 阶矩 阵乘法算法复杂 度 为),在逻辑代码中呈现为多层递归带来不可忽视的性能瓶颈。基 于Strassen算法复杂度为lb7)),将参与乘法的矩阵分解成粒度更细小的计算单元,最 后 在FaaS系统上并行求解这些计算单元,取代了原始多层递归运算极大提高了矩阵运算效率。文献描述 了 一 些 借 助 Serverless平台 实施的问题 求 解 实 验:(根据 贝 利波尔 温普劳 夫公式计算指定精度的圆周率;()通过划分求解空间批量运行SHA256穷举碰撞来破解密码。可以发现上述科学计算的实验中,实 验 人 员先把原始问题分解为计算量更小且逻辑一致的单元问题再并行求解各单元最后汇总求出目标解。实验表明相比于传统多线程单体应用,函数应用效率显著提高且单元问题越简单并发规模越大,效率提升越明显

1.4 Serverless与机器学习

     机器学习仍是近来人工智能领域最热门的研究课题之一,其核心工作是通过原始数据集构建达到目标精度的机器学习模型。随着训练样本规模不断增大所需计算资源不断增加,资源管理和性能瓶颈成为其中不可回避的挑战。现有机器学习框架在资源管理方面存在以下限制:()各类基础设施管理事务占据实验人员相当比例的工作量;(固定的、过度的资源配置使实验人员无法为计算集群准确设置资源的配额,导致资源浪费负载不均文献在现有技术基础上提出了改进的机器学习平台,实现了云端托管算法代 码 和 训 练 集远程下发模型训练作业等支持。 Serverless环境 不 仅 支 持 计 算 节 点 与 资 源 动 态 调度且具备一定的容错能力实验显示,相较于同等费用的虚拟机集群,该应用在同样的训练任务中节省了44%的时间。在改进机器学习训练效率方面文献沿用了函数应用与大数据科学计算结合的思路,先拆分原始训练集进行耗时更短的局部训练,得到较小的局部梯度计算单元,然后再将并行求解得到的局部梯度合并经过多次迭代得到拟合结果。在给定内存进程数和迭代次数的情况下,相比传统机器学习模型,该模型表现出更高的吞吐率和更低的时延

1.5 Serverless与IoT、边缘计算

     IoT 系统通常由处在云端、边缘端的服务器以及大量终端 设 备 组 成终 端 设 备边缘 服 务 器、边缘服务器云服务器等方向时刻进行着大规模的数据传输这对系统时延、带宽等性能提出了巨大的挑战。异构的分布式终端与边缘服务器还涉及设备兼 容系 统 容 错、弹性伸缩和服务质量等需求。因此IoTServerless解决 方 案 应 运 而 生。文 献基于Serverless平台设计了跨越云端架构的实时数据分析系统,结合了中心云的高性能算力大 容 量 存 储 以 及 边 缘 Serverless系 统 的 高 并发低时延等优点,区分了基于时间敏感的多级的实时数据分析工作流。该文献还实现了由人体穿戴设备组网的实时人体数据分析系统,分别模拟了灾害与日常2类重要场景中人体关键数据实时分析的实验

2 面临的挑战

2.1 缩容至零(ScaletoZero)问题

      Serverless系统的高吞吐特性源自函数实例快速扩容机制然而当访问量降至零时,系统将释放全部函数实例与计算资源。若之后请求到达而运行环境中没有对应的活跃函数实例时,系统将重新生成该 函 数 实 例该过程称为冷启动。相 比已有实例的快速扩容机制,冷启动存在着不可忽视的时延问题。问题的关键在于延长函数实例的活跃期或采用缓存技术支持失活实例的热启动。当请求再次到达时系统跳过检索仓库与生成实例的环节,直接从缓存中检出已有的函数实例副本,缩短响应时延。将空闲的尚未释放的容器节点和函数实例组织成队列结构以提高缓存检索效率,减小系统时延。提出一种通过管理冷启动的信号标识来控制函数调度的方法,根据函数依赖关系和冷启动次数等信息提前指示函数实例的异步加载减小函数实例启动时延。由于缓存组件容量有限存在超时失效机制因此,仍需解决诸如函数依赖预加载策略请求事件预测等相关问题

1.2 数据调度与缓存性能瓶颈

     函数运行伴随着数据传输,当数据源与函数运行环境在网络、地理空间上相距较远且数据集规模足够大时,则性能瓶颈出现在数据集的调度与传输上造成严重的网络负载与时延。把规模小得多的函数文件传输到数据源附近的环境中运行从而降低网络负载。然而该方法只有函数计算结果规模远小于输入数据集时才有提升效果。该文献也遗留了分布式多数据源场景中数据传输、流 式Serverless函数计算等未解决的问题。引入缓存组件能有效提升数据处理性能,因此还需要研究 适 用 于 Serverless系统 的 动 态 分 布 式数据集缓存策略当前,云提供商会为每一个运行环境提供可就地使用的数据缓存服务,而这种方法价格不菲且尚未解决多函数多数据集异步协作分布式负载均衡等场景中的缓存需求

1.3 触发器调度器性能瓶颈

     触发器调度 器 是 Serverless系 统 重 要 结 构,通常由 API网关和调度队列实现负责事件监听、任务分发等作业对比中心化与分布式2种调度架构前者暴露出吞吐瓶颈,而后者存在自治节点负载不均的问题。实现了总体负载均衡的分布式调度架构,在并行计算单元队列的基础上设置全局负载均衡器,实时进行队列负载监控和健康检查当队列容量饱和或异常时,当前队列中的任务可以转移到其他队列以兼顾负载均衡和吞吐性能

1.4 系统安全

     文献列举 了 目 前 应 用 于 Serverless系统的安全措 施:(采用JWTJSON WebToken)、 SSLTLSSecureSocketLayer/TransportLayerSecurity等网络通信加密手段;()采用云认证方式的租户隔离与管理;API网关处设置防火墙;(借助 Serverless服务 自 身 的 并 发 机 制 来 分析和探测可能的网络攻击。值得注意的是Serverless的特性也带 来 了 一些安全隐患。攻击者可以通过分析暴露的单个函数行为而逐步推导出整个函数应用的安全漏洞;高并发特性给资源耗尽攻击提供了可能,致使系统资源配额函数最大并发缓存上限和带宽上限等)被恶意占用并耗尽造成系统崩溃由于 Serverless基于容器技术,不可避免地涉及了容器领域的安全难题例如熔断攻击幽灵攻击等

1.5 生态体系

      Serverless技术生态的构建需要软硬件的支撑关于 Serverless应用 调 试 工 具、函 数 依 赖管理工具等研究已经取得可观的成果,但实际应用场景中异构多样化的底层基础设施、云服务平台和编程语言 等 在 Serverless上的兼容方案尚不成熟。现有的大部分开发工具库还不能直接迁移到Serverless平台上使用除软件体系外,Serverless也需要相关硬件 支 持文 献指出 现 有 Serverless技术尚不支持 GPU 硬件加速,这在一定程度上影响了其在深度学习领域的发展。形成统一的标准与定义是构建技术生态的重要环节文献提出争论认为Serverless更像 是 PaaS的改 进 应 用性 能 提 升 有 限,在 应 用 开 发部署、基础设施管理和下一代云架构等方面还有很多关于标准化内容需要进一步设计和讨论。文献认为目前 NIST(NationalInstituteofStandardsandTechnology)标准中关于云计算的定义已经足够陈旧可 以 考 虑 将 FaaSBaaS等众 多 新 兴云服务模式收录其中,以适应当前云计算领域快速发展的需求

3 结束语

     Serverless技术相比于其他传统的云服务模式在基础设施管理软件开发、并发性和专业性要求等方面存在诸多优势。在云计算快速发展和传统产业转型的背景下合理选择Serverless作为应用开发的支撑技术将有助于业务的高效实现。本文首先介绍了Serverless系统架构与技术特性,整理了无服务器计算当前的研究现状;然后描述了无服务器计算在新型系统开发大数据处理、科学计算、机器学习和边缘计算等前沿应用领域的实施案例;最后梳理了无服务器计算目前面临的较为突出的挑战

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
4月前
|
人工智能 自然语言处理 Serverless
阿里云函数计算 x NVIDIA 加速企业 AI 应用落地
阿里云函数计算与 NVIDIA TensorRT/TensorRT-LLM 展开合作,通过结合阿里云的无缝计算体验和 NVIDIA 的高性能推理库,开发者能够以更低的成本、更高的效率完成复杂的 AI 任务,加速技术落地和应用创新。
182 13
|
5月前
|
机器学习/深度学习 机器人 Serverless
FaaS 的应用场景
FaaS 的应用场景
|
11天前
|
人工智能 Serverless API
尽享红利,Serverless构建企业AI应用方案与实践
本次课程由阿里云云原生架构师计缘分享,主题为“尽享红利,Serverless构建企业AI应用方案与实践”。课程分为四个部分:1) Serverless技术价值,介绍其发展趋势及优势;2) Serverless函数计算与AI的结合,探讨两者融合的应用场景;3) Serverless函数计算AIGC应用方案,展示具体的技术实现和客户案例;4) 业务初期如何降低使用门槛,提供新用户权益和免费资源。通过这些内容,帮助企业和开发者快速构建高效、低成本的AI应用。
55 12
|
5月前
|
Serverless API 异构计算
函数计算产品使用问题之修改SD模版应用的运行环境
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
5月前
|
运维 Serverless 网络安全
函数计算产品使用问题之通过仓库导入应用时无法配置域名外网访问,该如何排查
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
3月前
|
存储 消息中间件 人工智能
ApsaraMQ Serverless 能力再升级,事件驱动架构赋能 AI 应用
本文整理自2024年云栖大会阿里云智能集团高级技术专家金吉祥的演讲《ApsaraMQ Serverless 能力再升级,事件驱动架构赋能 AI 应用》。
158 11
|
2月前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
101 1
|
2月前
|
运维 监控 Serverless
Serverless架构在图像处理等计算密集型应用中展现了显著的优势
Serverless架构在图像处理等计算密集型应用中展现了显著的优势
40 1
|
3月前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
66 3
|
3月前
|
运维 Serverless 数据处理
Serverless架构在图像处理等计算密集型应用中展现了显著的优势
Serverless架构在图像处理等计算密集型应用中展现出显著优势,包括加速研发交付、降低成本、零运维成本、高效资源利用、自动扩展、实时数据处理及快速原型开发,为高并发、动态需求场景提供高效解决方案。
68 1

相关产品

  • 函数计算