检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
制作函数的私有依赖包 本章节指导您如何在本地制作函数的依赖包。推荐在EulerOS环境中制作函数依赖包,在其他系统中打包,可能由于底层依赖库的原因,导致运行时出现例如找不到动态链接库的问题。 约束与限制 私有依赖包的文件大小限制为300M。 如果安装的依赖模块需要添加依赖库,请将
步骤四:搭建函数部署脚本更新流水线 此流水线的主要作用是将函数部署脚本deploy.py发布到部署主机上,供函数更新流水线使用。 新建构建任务 在“构建&制品 > 编译构建”页面,单击“新建任务”。 源码仓库选择“functions仓库”,构建模板选择“空白构建模板”,完成单击“确定”。
如何制作函数依赖包? 制作函数依赖包推荐在EulerOS环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。 搭建EulerOS环境
扩展函数的存储空间 FuncitonGraph提供了磁盘挂载功能,通过挂载文件系统可为函数带来如下优势: 相比于临时存储空间/tmp,可以极大的扩展函数的执行存储空间。 多个函数之间可以挂载同一个文件系统,共享访问已经配置好的文件系统。 利用ECS已有的存储能力,可实现计算资源的动态扩展。
构建程序 创建API分组 创建函数及添加事件源之前,需要先创建一个API分组,API分组是API的管理单元,用来存放API。 您需要拥有一个APIG实例后才能开启API网关服务相关功能,具体请参见购买实例。 登录APIG控制台,在左侧导航栏选择“API管理 > API分组”,单击“创建API分组”。
开发事件函数 函数定义 建议使用Python 3.6版本。 对于Python,FunctionGraph运行时支持Python 2.7版本、Python 3.6、Python3.9、Python3.10版本。 函数有明确的接口定义,如下所示。 def handler (event
开发事件函数 函数定义 建议使用Node.js 12.13版本。 Node.js 6.10函数定义 Node.js6.10 函数的接口定义如下所示。 export.handler = function(event, context, callback) 入口函数名(handler):入口函数名称,
计费项 计费说明 函数工作流的计费项是由请求次数费用、执行时间费用、节点执行次数(函数流)和其他费用构成,具体内容如表1。 如您需要快速了解函数工作流服务的具体价格,请参见函数工作流价格详情。 表1 函数工作流计费项 计费项 计费项说明 适用的计费模式 计费公式 请求次数费用 在
约束与限制 支持区域 函数工作流服务支持区域详情请参见地区和终端节点。 函数配置 表1 函数配置约束与限制 限制项 说明 单个函数下最大允许创建的版本个数 20(含latest版本) 单个函数下最大允许创建的别名个数 10 每个版本仅可以创建1个别名。 单个函数版本下最大允许创建的触发器总数
步骤五:搭建函数更新流水线 此流水线的主要作用是将functions仓库的helloworld函数代码配置发布更新到FunctionGraph平台。 新建构建任务 在“构建&发布 > 编译构建”页面,单击“新建任务”。 源码仓库选择functions仓库,构建模板选择“空白构建模板”。
配置函数的心跳检测 心跳函数用于检测用户函数运行时的异常场景,如函数死锁、函数内存溢出、函数网络异常等。 配置了心跳函数后,当函数运行时,FunctionGraph每隔5秒向函数实例发送一次心跳请求,触发心跳函数。如果心跳请求返回异常,FunctionGraph会认为函数实例异常,将终止此函数实例。
配置函数的动态内存 默认情况下,一个函数唯一绑定了一个资源规格。开启动态内存可以让函数在处理指定请求时,设置本次处理中函数实例使用的资源规格。如果不指定资源规格,函数将使用默认配置的资源规格。 以使用函数做视频转码为例,视频文件大小从MB到GB,不同编码格式和分辨率对转码需要的计
打包 打包CLI命令 使用Serverless CLI工具,可以将项目打包,而无需将其部署到华为云。这最好与CI/CD工作流一起使用,以确保可部署产物一致。 运行以下命令将在服务的.serverless目录中构建和保存所有部署产物: serverless package 打包配置
管理函数流 函数流创建后,用户可以查看函数流的配置、执行历史、执行日志等信息,可以对失败的流程进行重试,也可以终止正在执行的流程。 查看函数流 登录函数工作流控制台,左侧导航栏单击“函数流”。 在函数流列表页面,支持设置函数流任务卡片显示和列表显示。 图1 设置显示方法 卡片显示
function字段介绍 function字段 表1 function字段说明 参数名 必填 类型 参数描述 functionName True String 函数名称 handler True String 函数执行入口,规则:xx.xx,必须包含“.” runtime True
配置函数的并发处理 默认情况下,每个函数实例同一时刻只处理一个请求。函数收到并发请求时,例如并发三个请求,FunctionGraph会启动三个函数实例处理请求。FunctionGraph提供了单实例多并发能力,可以在一个实例上并发处理多个请求。 单实例多并发适合函数处理逻辑中有较
部署环境准备 本章节以Linux主机为例,指导您基于KooCLI和软件开发生产线CodeArts搭建一套FunctionGraph函数的CI/CD。 云服务器ECS 该服务器作为CodeArts部署任务的部署主机,用于部署更新FunctionGraph函数。 规格:1vCPUs |
使用容器镜像创建函数 FunctionGraph支持加载容器镜像中的函数并运行,与直接上传代码的方式相比,用户可以使用自定义的代码包,不仅灵活,也简化了用户的迁移成本。 约束与限制 请参见配置函数的委托权限,创建一个包含“SWR Admin容器镜像服务(SWR)管理员”权限的委托
配置函数的常规信息 函数的常规配置信息如函数执行入口、执行超时时间、内存等,会在创建函数时根据所选择的运行时语言默认填写,用户可根据实际业务需要修改常规信息的配置。 配置常规信息 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击函数的名称,进入函数详情页。 在“设置”页签下选择“常规设置”。
remove trigger命令 remove trigger命令,是删除指定触发器的命令。 当执行命令remove trigger -h/remove trigger --help时,可以获取帮助文档。 参数解析 表1 参数说明 参数全称 参数缩写 Yaml模式下必填 Cli模式下必填