检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
情请参考开发指南。 ②上传代码 目前支持在线编辑、上传ZIP或JAR包,从OBS引用ZIP包等,详情请参考代码上传方式说明。 ③API和云产品事件源触发函数执行 通过RESTful API或者云产品事件源触发函数执行,生成函数实例,实现业务功能。 ④弹性执行 函数在执行过程中,会
概述 函数开发简介 函数支持的事件源 函数工程打包规范 在函数中引入动态链接库
调用说明 FunctionGraph提供了REST(Representational State Transfer)风格API,支持您通过HTTPS请求调用,调用方法请参见如何调用API。 父主题: 使用前必读
部分功能使用频次低,但仍然持续占用资源,CPU使用率低;改造后业务按需使用,低频服务缩容到0,明显降低资源成本。 通过托管模式进行Serverless化改造,业务改动少,单函数可支持多业务接口;通过独立函数方式进行改造,接口可独立发布,业务更加灵活,函数冷启动时间快。 实现流程 准备好应用程序所需的后端服务,如数据库、Redis等。
project_id 是 String 租户项目 ID,获取方式请参见获取项目ID。 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。
测试函数 测试托管方式改造函数,调用方法如图1所示。 图1 测试函数调用的方法 调用时,遵循原来的请求方法。 请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求Path即可),如图2所示。
的执行结果,直接向客户端返回响应,这种情况下客户端无法实时感知函数的执行结果。如果需要设置异步请求失败重试或者获取异步请求的结果通知,可以通过设置异步配置实现。 失败重试:用户代码异常造成的失败,FunctionGraph默认不重试。如果函数中有需要重试的场景,例如调用三方服务经常失败,可配置重试提升成功率。
js框架的默认demo为例演示部署过程,需要在Linux环境中创建一个全新的Next.js项目,本案例采用本地运行Docker node:18.15.0镜像的方式,同样适用于其他Linux系统。关于Docker镜像和Linux操作系统的使用并非本案例主要内容,不做过多赘述。 启动Docker容器并进
FunctionGraph保证一个函数实例在生命周期内只成功执行一次函数初始化。函数初始化的执行时间也会被计量,用户需要为此付费,计费方式与函数的调用处理一致。 一般场景下,多个请求处理可以共享的业务逻辑适合放到初始化函数,以降低函数时延,例如深度学习场景下加载规格较大的模型、数据库场景下连接池构建。
异步执行工作流 功能介绍 以异步执行方式启动工作流,暂不支持国际站局点调用 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/fgs/workflows/{workflow_id}/executions 表1 路径参数 参数 是否必选 参数类型
同步执行工作流 功能介绍 以同步执行方式启动工作流(仅快速模式工作流支持),暂不支持国际站局点调用 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/fgs/workflows/{workflow_id}/sync-executions 表1 路径参数
本章节主要指导使用Go语言开发应用的用户,将业务部署到FunctionGraph。 由于HTTP函数本身不支持Go语言直接代码部署,因此本章节将以转换成二进制的方式为例,将Go编写的程序部署到FunctionGraph上。 操作流程 构建代码包 创建源文件main.go,代码如下: // main.go
开发HTTP函数 本章节通过HTTP函数部署koa框架,更多HTTP详情,请参见创建HTTP函数。 约束与限制 HTTP函数只能绑定APIG/APIC触发器,根据函数和APIG/APIC之间的转发协议,函数的返回合法的http响应报文中必须包含body(String)、statu
进阶使用:通过挂载同一SFS文件系统实现多用户资源共享 应用场景 模型文件普遍占用大量内存,在多用户使用场景下,每个用户复制一份模型文件会导致不必要的存储空间浪费。通过将不同用户的应用挂载到同一SFS文件系统下,能够满足多人共享模型文件资源的需求,同时为了避免不同用户使用期间的推理结果相互影响,可以在Stable
据处理的功能。(当前函数流暂时支持华北-北京四、华东-上海一、华东-上海二、华南-广州、亚太-新加坡。) 场景介绍 用户使用函数流编排函数方式自动化处理OBS中的数据(如视频解析、图片转码、视频截图等)。 用户将图片上传到特定的OBS桶中。 函数流编排函数算子,实现下载OBS中数
本章节指导使用Springboot开发应用的用户,将业务通过构建HTTP函数的方式部署到FunctionGraph。 使用Next.js项目构建HTTP函数 本章节指导使用Next.js框架开发应用的用户,将业务通过构建HTTP函数的方式部署到FunctionGraph。 使用Go语言程序构建HTTP函数
会包含测试用例源代码、无用的二进制文件和数据文件等,删除无用文件可以降低函数代码下载和解压时间。 公共依赖包加速 在编写应用程序时,往往会引入第三方依赖库,尤其是Python语言。在冷启动过程中会下载所需的依赖包,若依赖包太大会直接增加启动时间。FunctionGraph提供公共
数流里面的函数执行异常时,可以通过“异常处理”来处理执行失败的函数并可添加重试。函数执行失败可分为多种情况:函数执行异常;函数内部业务失败并在返回内容中添加了错误码,例如status,200代表成功,500和404等代表失败。 约束与限制 如果通过DWR侧创建的函数流,在cons
的流程中,弱化控制流中步骤之间的先后执行顺序,允许异步同时执行,步骤与步骤之间的交互通过数据流驱动。其中数据流的控制通过 Stream Bridge 组件来实现。同时函数 SDK 增加流式数据返回接口,用户不需要将整个文件内容返回,而是通过 gRPC Stream 的方式将数据写入到 Stream Bridge,Stream
配置函数流的函数服务组件 函数流支持配置函数服务组件,通过该组件实现业务需求。 约束与限制 如果通过DWR侧创建的函数流,在console页面是没有编辑和删除权限,如需相关操作请在DWR侧执行。 配置的函数节点返回的数据格式必须是json格式,否则会解析失败。 仅对于Go函数支持返回流式数据:在函数详情页的“设置