检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
API概览 FunctionGraph API为开发者、合作伙伴提供开发、部署、托管、运维的开放接口,帮助用户快速、低成本地实现业务创新,缩短应用上线周期。 FunctionGraph API提供的接口有如下几种类型。 表1 接口简介 类型 说明 函数调用 包括同步执行函数、异步执行函数
函数流管理 函数流简介 创建函数流任务 函数流执行历史管理 创建函数流触发器 流式文件处理
入门实践 当您了解如何创建函数等基本操作后,可以根据自身的业务需求使用函数工作流 FunctionGraph 提供的一系列常用实践。 本文介绍函数工作流 FunctionGraph 常用实践,帮助您更好的使用函数工作流。 表1 常用最佳实践 实践 描述 使用函数压缩图片 本实践基于函数工作流服务实践所编写
权限及授权项说明 如果您需要对您所拥有的FunctionGraph进行精细的权限管理,您可以使用统一身份认证服务(Identity and Access Management,简称IAM),如果公有云账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章节,不影响您使用
获取指定函数流实例的元数据 功能介绍 获取指定函数流实例的元数据 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/fgs/workflows/{workflow_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String
API 函数调用 函数配额 函数依赖包 函数测试事件 函数调用链 函数生命周期管理 函数版本别名 函数指标 函数日志 函数模板 函数预留实例 函数导入导出 函数触发器 函数流 函数异步配置 函数应用中心
创建事件函数 概述 函数是处理事件的自定义代码,您可以使用空白模板函数创建函数,根据实际业务场景进行函数配置。 由于FunctionGraph承担计算资源的管理工作,在函数完成编码以后,需要为函数设置运算资源等信息,目前主要是在FunctionGraph函数控制台完成。 创建函数时可以使用空模板
定时开关华为公有云虚拟机 应用场景 当您需要在特定时间打开或者关闭华为公有云虚拟机时,可以考虑通过函数服务调用华为云ECS接口,定时开关虚拟机。 开机节点:需要定时打开的虚拟机。 关机节点:需要定时关闭的虚拟机。 前提条件 根据实际业务,获取定时开启华为公有云虚拟机的程序包或者定时关闭华为公有云虚拟机的程序包
操作流程 本方案包含以下操作步骤 创建文件接收函数:接收上传的文件并解析内容。 端到端测试:绑定APIG触发器,测试文件上传及处理流程。 NodeJS语言方案 Python语言方案 父主题: 函数+APIG:处理文件上传
函数配置 FunctionGraph函数是否支持环境变量? 能否在函数环境变量中存储敏感信息? 如何使用函数为图片打水印? 如何通过父函数调用子函数? 如何通过版本和别名实现绑定APIG触发器的HTTP函数的灰度升级?
函数支持引入的依赖库有哪些? 支持的依赖库说明 FunctionGraph支持引入标准库及第三方依赖库。 标准库 对于标准库,无论是在线编辑或是线下开发打包上传至FunctionGraph,均可以直接在代码中引入,使用其功能。 FunctionGraph支持的非标准库 FunctionGraph
准备 本例提供了日志实时过滤功能的程序包及依赖包,用户可以下载 lts_cleanse.zip(包含函数A代码文件write_log.py、函数B代码文件lts_cleanse.py及依赖包huaweicloudsdklts) 、lts_cleanse.zip.sha256 学习使用
约束与限制 支持区域 当前支持的区域列表,请参见表1 表1 支持区域 区域名称 区域ID 非洲-约翰内斯堡 af-south-1 中国-香港 ap-southeast-1 亚太-曼谷 ap-southeast-2 亚太-新加坡 ap-southeast-3 亚太-雅加达 ap-southeast
创建函数流 功能介绍 创建函数流 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/fgs/workflows 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 最小长度
版本管理 概述 在函数从开发、测试、生产过程中,可以发布一个或多个版本,实现对函数代码的管理。对于发布的每个版本的函数、环境变量会另存为相应版本的快照,函数代码发布后,您可以根据实际需要修改版本配置信息。 函数创建以后,默认版本为latest版本,每个函数都有一个latest版本。
修改指定函数流实例的元数据 功能介绍 修改指定函数流实例的元数据 调用方法 请参见如何调用API。 URI PUT /v2/{project_id}/fgs/workflows/{workflow_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String
注册OpenTelemetry API http://${EXTENSION_API_ADDR}/telemetry 您可以通过 EXTENSION_API_ADDR 环境变量得到平台开放的提供注册的API地址,例如对于Python,EXTENSION_API_ADDR的获取方式为
函数开发简介 函数支持的运行时语言 FunctionGraph函数Runtime支持多种运行时语言:Python 、Node.js、Java、Go、C#、PHP、Cangjie及自定义运行时,说明如表1所示。 建议使用相关语言的最新版本。 表1 运行时说明 运行时语言 支持版本 SDK
修订记录 表1 修订记录 发布日期 修订记录 2022-11-21 新增接口内容如下: 分页查询指定函数流记录 2022-11-14 新增接口内容如下: 创建依赖包版本 获取依赖包版本列表 获取依赖包版本详情 删除依赖包版本 获取按指定指标排序的函数列表 获取函数预留实例配置列表
函数工作流冷启动优化实践 Serverless按需付费、自动弹性伸缩、屏蔽复杂性等特征使其逐渐成为下一代云计算新范式。但是在Serverless架构带来极大便利的同时,在实时性要求较高的应用场景下,冷启动将是面临的一个切实的挑战。当使用Serverless构建Web服务时,冷启动和