联系我们

苏州奥尔马电子科技有限公司

江苏省苏州市高新区金猫路9号B幢

丁经理

13584892482

13584892482

135848924828

【阿里云】Serverless 工作流

发布者:极豹云发布时间:2022-05-19访问量:256

Serverless 工作流(Serverless Workflow,原函数工作流)是一个用来协调多个分布式任务执行的全托管 Serverless 云服务,致力于简化开发和运行业务流程所需要的任务协调、状态管理以及错误处理等繁琐工作,让用户聚焦业务逻辑开发。用户可以用顺序、分支、并行等方式来编排分布式任务,服务会按照设定好的顺序可靠地协调任务执行,跟踪每个任务的状态转换,并在必要时执行用户定义的重试逻辑,以确保工作流顺利完成。


产品优势


协调分布式组件
编排不同基础架构、不同网络、不同语言编写的应用,抹平混合云、专有云过渡到公共云或者从单体架构演进到微服务架构落差。

减少代码量
帮您管理应用程序的逻辑,支持多种控制原语,例如顺序,分支,并行等,尽量减少您在业务中实现重复的编排代码。

提高容错性
为您管理流程状态、设置检查点和流程重启,以确保您的应用程序按照预期逐步执行。内置 try/catch、重试和回滚功能可以自动处理异常错误。

Serverless
根据实际执行步骤转换个数收费,执行结束不再收费,服务自动扩展让您免于管理硬件预算和扩展。


精心打造的功能


服务编排能力
帮助您将流程逻辑与任务执行分开,支持多种控制原语,例如顺序,分支,并行等,内置错误重试和捕获能力,节省编写编排代码的时间。

流程状态管理
管理流程执行中的所有状态,包括跟踪它所处的执行步骤,以及存储在步骤之间的输入输出。您无需自己管理流程状态,也不必将复杂的状态管理构建到任务中。

协调分布式组件
能够协调在不同基础架构上,不同网络内,以不同语言编写的应用。应用不管是从私有云/专有云平滑过渡到混合云或公共云,或者从单体架构演进到微服务架构,Serverless 工作流都能发挥协调作用。

支持长时间运行流程
跟踪整个流程,持续长时间执行确保流程执行完成。有些流程可能要执行数个小时、数天、甚至几个月等,例如运维相关的 Pipeline,邮件推广流程等。

可视化监控
提供可视化界面来定义工作流和查看执行状态。状态包括输入和输出等。方便您快速识别故障位置,并快速排除故障问题。

运维全托管和按需付费
将运维人员从基础设施维护解放出来,提供了安全的、高可用的、高容错的和高持久的服务。用户只需支付步骤转换费用,不使用不产生费用。


领军客户实战场景
多媒体文件处理场景

多任务编排,减少流程失败率,提升多媒体吞吐量
使用 Serverless 工作流可以帮助您将多个任务,如转码,截帧,人脸识别,语音识别,审核上传等,编排成一个完整的处理流程,通过函数计算提交媒体处理(IMM)任务(或自建处理器),产出一个符合业务需求的输出。各任务的执行错误异常可以被可靠的重试,大大提升多媒体任务处理吞吐量,案例实践参见 https://yq.aliyun.com/articles/727684 。


能够解决
多任务编排
流程中如转码,截帧,人脸识别,语音识别,审核上传等步骤的编排。

解决流程失败问题
系统会对任务的执行错误异常进行多次重试



基因数据处理场景

简化大规模计算编排,优化成本,缩短流程总时长
Serverless 工作流可以将多个批量计算分布式作业串联或并行编排,可靠地支持执行时间长、并发量大的大规模计算。如基因数据分析中将基因序列对齐,将所有染色体并行做变异分析,最终将各染色体数据聚合产出结果。Serverless 工作流根据指定的依赖关系提交不同CPU/内存/带宽规格的批量计算作业,提升执行可靠性,提高资源利用率,优化成本。


能够解决
简化大规模计算编排
将多个批量计算分布式作业串联或并行编排,同时支持执行时间长、并发量大的计算。

缩短流程总时长
根据任务依赖关系提交不同的规格批量计算作业,提升并行执行可靠性。



数据处理流水线场景

可靠调度海量计算资源,个性化编排大数据处理任务
使用 Serverless 工作流可以快速搭建一个高可用的数据处理流水线。比如,来自不同数据源的计量数据被收集到日志服务,函数计算的定时器每小时触发工作流,Serverless 工作流利用函数计算对多个Shard的计量数据做并行处理,并将结果分别写回日志服务服务;然后可以将所有Shard产生文件进行聚合,写入表格存储,最后为每个用户生成账单。工作流支持对流程中的单个步骤失败进行重试,降低流程失败概率。工作流支持动态并行任务执行,实现数据处理能力的高可扩展性,案例实践参见 https://yq.aliyun.com/articles/741105 。


能够解决
解决并发执行问题
支持动态并行任务执行,实现数据处理能力的高可扩展性。



自动运维场景

提升运维效率和可靠性,流程进度可视化界面
自动化运维常见有步骤繁琐时间长短不一,单机脚本可靠性低,依赖复杂等常见的挑战,另外进度无法可视化。Serverless 工作流+函数计算的流程可以很好地应对这些挑战。例如自动化的软件部署从构建Docker容器,上传容器镜像,开始并追踪各节点下拉镜像并启动新版本镜像的容器,每一步函数产生的日志会被保存到日志服务可供查询分享。基于工作流的自动化工具相比单机运维脚本具有高可用,自带的错误处理机制和进度图形化的特点。


能够解决
解决流程进度可视化问题
自动化运维步骤繁琐时间长短不一,单机脚本可靠性低,依赖复杂等常见的挑战,另外进度无法可视化。