检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
按需计费 适用场景 函数工作流使用场景广泛,例如实时文件处理、实时数据流处理、Web移动应用后端和人工智能等场景。 适用计费项 函数工作流实际费用是由请求次数费用、执行时间费用、函数流节点执行次数、GPU计量时间、磁盘计量时间、闲置内存计量时间和其他费用构成,各计费项按需计费说明请参见表1。
使用APIG触发器,函数如何获取请求路径或请求参数? 请求路径或请求参数默认携带在event的入参中,FunctionGraph函数对APIG调用的传入值为函数自带的事件模板。您可以通过打印函数执行结果,获取请求路径或请求参数。 示例: queryStringParameters
案例概述 场景介绍 MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
示例3:上传代码到OBS桶,并使用OBS链接创建函数 场景描述 本章节以Python 2.7为例,指导您在本地编码,然后将代码文件上传到OBS桶,实现通过OBS链接创建函数。 API的调用方法请参见如何调用API。 前提条件 已在OBS服务中创建OBS桶。 总体思路 在本地进行函
配置单实例多并发 该特性仅FunctionGraph v2版本支持。 前提条件 已配置“单实例并发数”的存量函数,仍支持函数修改该配置,但当“单实例并发数”修改为1时,该参数后续不再支持修改。 通过“容器镜像”和“HTTP函数”方式创建的函数,“单实例并发数”默认值是1,但支持设置多并发数,取值范围1-1000。
创建依赖包 创建一个redis-py的依赖包,建议使用redis-py 4.6.0(校验包:redis-4.6.0.zip.sha256)版本。 登录函数工作流控制台,在左侧导航栏选择“函数 > 依赖包管理”,进入“依赖包管理”界面。 单击“创建依赖包”,弹出“创建依赖包”对话框。
使用STS Token替换 登录函数工作流控制台,选择“函数 > 函数列表”,单击函数名称进入详情页。 图1 进入函数详情页 选择“代码”页签,将原代码中“context.getAccessKey()”和“context.getSecretKey()”替换为“context.ge
获取指定函数流实例的元数据 功能介绍 获取指定函数流实例的元数据 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/fgs/workflows/{workflow_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String
调试并调用API API网关提供了在线调试的功能,因此一般建议在API网关上完成API配置之后,可以先通过此功能确认API是否配置成功。 登录APIG控制台,左侧导航栏选择“API管理 > API列表”,单击进入已创建的API“API_test”,单击“调试”。 在本案例中,需要
删除指定函数的所有触发器 功能介绍 删除指定函数所有触发器设置。 在提供函数版本且非latest的情况下,删除对应函数版本的触发器。 在提供函数别名的情况下,删除对应函数别名的触发器。 在不提供函数版本(也不提供别名)或版本为latest的情况下,删除该函数所有的触发器(包括所有版本和别名)。
删除触发器 功能介绍 删除触发器。 调用方法 请参见如何调用API。 URI DELETE /v2/{project_id}/fgs/triggers/{function_urn}/{trigger_type_code}/{trigger_id} 表1 路径参数 参数 是否必选 参数类型
remove function命令 remove function命令,是删除指定函数的命令。默认会把整个函数删除,包含所有的版本、别名以及触发器。 当执行命令remove function -h/remove function --help时,可以获取帮助文档。 参数解析 表1
函数发起HTTP请求的源地址如何获取? 公网访问 函数未开启“函数访问VPC内资源”功能时访问公网。 访问公网时使用函数工作流服务的SNAT地址,该地址是固定的,如何获取请咨询技术支持工程师。 图1 未开启函数访问VPC内资源 函数开启“函数访问VPC内资源”功能时访问公网。(相关VPC配置详情请参见配置网络)
注册OpenTelemetry API http://${EXTENSION_API_ADDR}/telemetry 您可以通过 EXTENSION_API_ADDR 环境变量得到平台开放的提供注册的API地址,例如对于Python,EXTENSION_API_ADDR的获取方式为os
函数定时触发器Cron表达式规则 函数Cron表达式下支持如下几种配置方式。 @every格式 @every NUnit,其中N表示一个正整数,Unit可以为ns, µs, ms, s, m, h,表示每隔N个Unit时间触发一次函数如表1所示。 表1 表达式示例 表达式 含义 @every
配置初始化 概述 初始化函数在函数实例启动成功后执行,执行成功后,实例才能开始调用请求处理函数处理请求。FunctionGraph保证一个函数实例在生命周期内,初始化函数成功执行且只能成功执行一次。初始化函数的执行时间也会被计量,用户需要为此付费,计费方式同请求处理函数。 应用场景
配置常规信息 概述 在函数创建完成后,“内存”、“函数执行入口”、“执行超时时间”会根据您所选的“运行时语言”默认填写。如果您需要贴合实际业务场景修改配置,请参见本章节进行配置。 前提条件 已创建函数。 操作步骤 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 选择待配置的函数,单击进入函数详情页。
初始化 登录函数工作流控制台,区域选择“上海一”。在左侧导航栏选择“应用中心”,在“应用程序”列表中单击需要初始化应用名称,进入“总览”页面。 在“总览”页面,单击“初始化自定义模型”开始配置。 图1 初始化自定义模型 VPC、子网、文件系统请选择前面创建的资源,函数访问路径默认
创建依赖包 操作步骤 本案例的依赖包如果使用Linux安装,会出现软连接导致的依赖缺失错误,因此需要删除现有“node_modules”子目录。 在Windows系统中重新安装,操作步骤如下: 退出Docker容器(原生Linux系统忽略)。 exit 删除项目目录中的“node
使用API模式 通过Serverless应用中心和管理中台部署的Stable-Diffusion应用默认未开启API访问,您可以通过配置函数环境变量的方式开启,请参考配置环境变量为Stable-Diffusion函数配置如下环境变量并保存。 表1 环境变量 Key Value EXTRA_ARGS