检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
OOT环境变量对应的值)。如果需要写文件(如创建新文件或者下载文件等),可以在/tmp目录下进行或者使用函数提供的挂载文件系统功能。 若容器回收,文件的读写就会失效。 函数目前不支持持久化。 典型场景 需要对OBS上的文件进行处理,可以先把文件下载到/tmp目录。 函数运行过程中
Yaml文件 字段解析 表1 参数说明 参数 必填 类型 参数描述 region True Enum 地域 function True Struct 函数 triggers False Struct 触发器 Yaml完整配置 华为云函数工作流(FunctionGraph)组件的Yaml字段如下:
将/opt/function/code/lib中的文件都拷到/opt/function/code。 cp -r /opt/function/code/lib/* /opt/function/code 切换到/opt/function/code目录下,将/opt/function/code下的文件都打入xxx.zip,依赖包制作完成。
平台支持都比较好,但是对于文件转码等存在超大数据流的场景,当前各大平台没有给出很好的解决方案。华为云FunctionGraph函数工作流针对该场景,提出了 Serverless Streaming 的流式处理方案,支持毫秒级响应文件处理。 技术原理 华为云FunctionGraph函数工作流提出
处理文件 当文件上传后更新至dew-bucket-input桶时,会生成事件,触发函数运行,将文件加解密,保存在dew-bucket-output中。 上传文件生成事件 登录对象存储服务控制台,进入dew-bucket-input桶对象界面,上传image.jpg文件,如图1所示。
访问WebUI程序创建相关目录和文件 进入user1的应用“总览”页,单击右上角“开始使用”,耐心等待函数启动。函数会自动在挂载目录中创建应用所需目录。 回到user1的应用“总览”页,单击“上传模型”打开文件管理工具。 图10 文件管理工具 将您的模型、插件等文件分别放入对应目录。以下介绍部分主要目录,其他目录请自行查看。
华为云函数工作流(FunctionGraph)Yaml规范 字段解析 表1 参数说明 参数名 必填 类型 参数描述 region True Enum Enum funtion True Struct 函数 trigger False Struct 触发器 Yaml完整配置 华为云
客户端上传文件到OBS,触发FunctionGraph函数,在上传数据后立即进行处理。可以使用FunctionGraph实时创建图像缩略图、转换视频编码、进行数据文件汇聚、筛选等。 其优势有: 灵活扩展,业务爆发时可以自动调度资源运行更多函数实例以满足处理需求。 事件触发,通过上传文件到
函数+DEW:加解密文件 案例描述 准备 构建程序 添加事件源 处理文件
函数+APIG:处理文件上传 方案概述 资源规划 操作流程
察布一、华东-上海一。) 用户向其中一个桶上传文件。 触发函数执行,对文件加/解密。 函数将处理后的文件上传到指定桶中。 完成本教程后,您的公有云账户将存在以下资源: 2个OBS桶(上传需要处理的文件和存储处理后的文件) 一个为文件加/解密的函数 一个OBS应用事件源,用来关联函数和OBS桶
规格:可使用共享版APIG或者创建专享版APIG实例 函数工作流FunctionGraph 区域:北京四 计费模式:按需计费 父主题: 函数+APIG:处理文件上传
操作流程 本方案包含以下操作步骤 创建文件接收函数:接收上传的文件并解析内容。 端到端测试:绑定APIG触发器,测试文件上传及处理流程。 NodeJS语言方案 Python语言方案 父主题: 函数+APIG:处理文件上传
Yaml模式下必填 参数含义 type - 选填 部署类型,可以选择code, config 操作案例 有资源描述文件(Yaml)时,可以直接执行s deploy 进行资源部署,描述文件(Yaml)示例: fgs-deploy-test: region: cn-north-4
参数含义 type - 选填 部署类型,可以选择code, config 操作案例 有资源描述文件(Yaml)时,可以直接执行s deploy function进行函数的部署,描述文件(Yaml)示例: fgs-deploy-test: region: cn-north-4
创建SFS Turbo文件系统 登录华为云弹性文件服务控制台,选择“SFS Turbo”,单击“创建文件系统”,进入“创建文件系统”界面。 在“创建文件系统”界面填写如下参数: 计费模式:根据实际情况选择,推荐按需计费。 弹性文件服务的计费介绍请参见计费说明,计费价格请参见价格计算器。
Python语言方案 前提条件 已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 操作步骤 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,单击“创建函数”。 选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。
Yaml模式下必填 参数含义 assume-yes y 选填 在交互时,默认选择y 操作案例 有资源描述文件(Yaml)时,可以直接执行s remove进行资源删除,描述文件(Yaml)示例: Function [myFunction] deleted successfully.
--version 安装华为云函数工作流提供商插件 从npm安装最新的软件包,请运行: npm i --save serverless-huawei-functions 设置华为云函数工作流 运行向华为云发出请求的Serverless命令,需要在您的计算机上设置华为云凭证,具体详情请参考设置华为云凭证。
NodeJS语言方案 前提条件 已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 操作步骤 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,单击“创建函数”。 选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。