检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
创建函数的时候,必须选择委托包含OBS访问权限的委托,否则不能使用OBS服务。 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,进入函数列表界面。 单击“创建函数”,选择“创建空白函数”进入创建函数流程。 填写函数配置信息。 输入基础配置信息,完成后单击“创建函数”。 函数类型:事件函数。
is数据库。本文介绍如何使用FunctionGraph和Redis客户端的能力,实现一个高可定制、高可靠、高可观测的最佳实践。 实现流程 表1 使用FunctionGraph函数访问Redis数据实现流程 序号 步骤 说明 1 准备工作 使用FunctionGraph配置函数访问Redis数据前需进行的前期准备。
其中函数服务的关键资源功能说明请参考表1。 为方便快速体验,应用中心会为您分配一个临时域名,此临时域名仅可用于测试使用,有效期30天。若想开放应用长期访问,需绑定自定义域名,具体部署步骤请参考绑定自定义域名(可选)。 图3 应用创建完成 表1 关键函数服务功能 函数资源逻辑名称
API方法 注册 http://${EXTENSION_API_ADDR}/extension/register 进程部署的扩展都需要在FunctionGraph注册成功后才能接收事件。您可以通过 EXTENSION_API_ADDR 环境变量得到FunctionGraph平台开
nctions/enable-async-status-logs 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目 ID,获取方式请参见获取项目ID。 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token
func。 登录FunctionGraph控制台,在左侧导航栏选择“函数 > 预留实例列表”,进入“预留实例列表”界面。 单击“配置预留实例”,弹出“配置预留实例”对话框。 设置以下信息。 表2 预留实例信息 参数 参数说明 应用 选择Objective-func所属的应用。 函数
return true 心跳函数目前无输入参数,返回值为Boolean类型。 配置心跳函数 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击函数的名称,进入函数详情页。 在“设置”页签下选择“高级设置”。 开启“配置心跳函数”开关,并配置心跳函数的入口。 心跳函数入口需
创建APIG触发器 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 选择待配置的函数,单击进入函数详情页。 选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框。 图1 创建触发器 配置以下参数。 表1 APIG触发器参数说明 参数 说明 取值样例 触发器类型 必选参数。
id、临时AccessKey、function meta等。 SDK接口 Context类中提供了许多上下文方法供用户使用,其声明和功能如所示。 表1 Context类上下文方法说明 方法名 方法说明 getRequestID() 获取请求ID。 getRemainingTimeInMilliSeconds
步骤二:创建虚拟私有云VPC和子网 登录华为云网络控制台,单击“创建虚拟私有云”,进入“创建虚拟私有云”界面。 在“创建虚拟私有云”界面参考表1填写参数,其他参数保持默认即可。 表1 VPC和子网参数配置 参数类别 参数 参数说明 取值样例 基本信息 区域 必选参数。 VPC及其子网部署的区域。当前
华为云函数工作流(FunctionGraph)Yaml规范 字段解析 表1 参数说明 参数名 必填 类型 参数描述 region True Enum Enum funtion True Struct 函数 trigger False Struct 触发器 Yaml完整配置 华为云
约束与限制 支持区域 函数工作流服务支持区域详情请参见地区和终端节点。 函数配置 表1 函数配置约束与限制 限制项 说明 单个函数下最大允许创建的版本个数 20(含latest版本) 单个函数下最大允许创建的别名个数 10 每个版本仅可以创建1个别名。 单个函数版本下最大允许创建的触发器总数
响。 事件触发 通过事件触发机制,集成多种云服务,满足不同场景需求,获得高效的开发体验。 与云日志服务、云监控服务对接,无需任何配置,即可查询函数日志和监控告警信息,快速排查故障。 高可用 函数运行实例出现异常,系统会启动新的实例处理后续的请求,故障函数实例占用资源将会回收使用。
Yaml文件 字段解析 表1 参数说明 参数 必填 类型 参数描述 region True Enum 地域 function True Struct 函数 triggers False Struct 触发器 Yaml完整配置 华为云函数工作流(FunctionGraph)组件的Yaml字段如下:
yuanrong.function.Handler.handleRestRequest。 执行超时时间和内存可以根据业务属性配置。超时时间表示,当请求执行超过该配置时间时,该次请求会因为超时而失败;内存根据业务运行过程中所需的内存大小配置,当内存使用超过该配置值时,函数实例可能会被迫停止而导致请求失败。
Diffusion应用详情页,在“资源”列表中分别找到逻辑名称为“stable_diffusion”和“custom_models_tool”的函数资源,单击链接进入函数详情页面,两个函数的操作相同。 进入函数详情页,依次单击“设置 > 触发器 > 创建触发器”,弹出创建触发器窗口,参考表1填写触发器参数。
IP地址)和redis_password(Redis连接密码)环境变量,同时开启“redis_password”的“加密参数”功能,最后单击“保存”。 表1 环境变量说明 环境变量 说明 redis_ip_address Redis的IP地址。 redis_password Redis连接密码。
运行时语言选择“Python3.6”,委托名称选择上一步创建的委托“EcsOperation”。 设置环境变量。 在“配置”页签配置环境变量,说明如表1所示。 表1 环境变量说明 环境变量 说明 region ECS所在的区域,如cn-north-4 projectId ECS所在的Project
创建函数的时候,必须选择委托包含OBS和DEW访问权限的委托,否则不能使用OBS和DEW服务。 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,进入函数列表界面。 单击“创建函数”,进入创建函数流程。 选择“创建空白函数”,填写函数配置信息。 输入基础配置信息,完成后单击“创建函数”。 函数类型:事件函数。
Context类中提供了许多上下文方法供用户使用,其声明和功能如表1所示。 getToken()、getAccessKey()和getSecretKey()方法返回的内容包含敏感信息,请谨慎使用,避免造成用户敏感信息的泄露。 表1 Context类上下文方法说明 方法名 方法说明 getRequestID()