什么是函数工作流
什么是函数工作流
由浅入深,带您认识华为云函数工作流 FunctionGraph
由浅入深,带您认识华为云函数工作流 FunctionGraph
函数工作流(FunctionGraph)是一项基于事件驱动的函数托管计算服务。通过函数工作流,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施。同时,按函数实际执行资源计费。
函数工作流服务提供的功能有函数管理、触发器管理、日志和监控、初始化功能、函数流、统一插件开发和调试、HTTP函数、调用链、自定义镜像。
函数工作流应用场景,如实时文件处理、实时数据流处理、Web移动应用后端和人工智能场景。
函数工作流采用按需付费方式,无最低费用,分别对请求次数和执行时间进行收费。即总费用 = 请求次数费用 + 执行时间费用
如果您需要对FunctionGraph的函数资源,给企业中的员工设置不同的访问权限,以达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全的控制公有云资源的访问。
FunctionGraph服务可以与SMN、API Gateway、OBS、DIS、LTS、CTS、DDS、CES、VPC服务对接,实现相关功能。
要创建FunctionGraph函数,首先需要创建函数部署程序包(包含代码和所有依赖项的文件)。用户可以自行创建部署程序包或直接在FunctionGraph函数控制台在线编辑代码,控制台将创建并上传部署程序包,从而实现FunctionGraph函数的创建。
事件数据作为event参数传入入口函数,配置后保存可以持久化,以便下次测试使用。每个函数最多可配置10个测试事件。
函数是实现某一功能所需代码、运行时、资源、设置的组合,是可以独立运行的最小单元。函数通过Trigger触发,自行调度所需资源及环境,实现预期功能。
函数代码一般包含公共库和业务逻辑两部分。对于公共库,您可以打包成依赖包单独管理,共享给多个函数使用,同时也减少了函数代码包部署、更新时的体积。
为防止资源滥用,平台限定了各服务资源的配额,对用户的资源数量和容量做了限制。如您最多可以创建多少台弹性云服务器、多少块云硬盘。如果当前资源配额限制无法满足使用需要,您可以申请扩大配额。
函数工作流提供了按量和预留两种类型的实例。按量实例是由函数工作流根据用户使用函数的实际情况来创建和释放。预留实例是将函数实例的创建和释放交由用户管理,当您为某一函数创建了预留实例,函数工作流收到此函数的调用请求时,会优先将请求转发给您的预留实例。
FunctionGraph函数Runtime支持多种运行时语言:Python 、Node.js、Java、Go、C#、PHP及自定义运行时。
FunctionGraph函数支持的云服务,可以将这些服务配置为FunctionGraph函数的事件源。在预配置事件源映射后,这些事件源检测事件时将自动调用FunctionGraph函数。
本章节以Linux主机为例,指导您基于KooCLI和软件开发生产线CodeArts搭建一套FunctionGraph函数的CI/CD。
函数工作流(FunctionGraph)开发工具支持CloudIDE、VSCode本地调试、Eclipse-plugin和PyCharm-Plugin。
Initializer是函数的初始化逻辑入口,不同于请求处理逻辑入口的handler,在有函数初始化的需求场景中,设置了Initializer后,FunctionGraph首先调用initializer完成函数的初始化,之后再调用handler处理请求;如果没有函数初始化的需求则可以跳过initializer,直接调用handler处理请求。
函数除了支持在线编辑代码,还支持上传ZIP、JAR、引入OBS文件等方式上传代码。
了解华为云函数工作流 FunctionGraph 学习视频
帮助您快速了解华为云函数工作流 FunctionGraph 功能特性
介绍如何使用空白模板创建函数
介绍如何使用APIG触发器
介绍如何使用OBS触发器
介绍如何使用SMN触发器
介绍如何使用DIS触发器
介绍如何使用定时触发器
介绍如何创建函数依赖包