检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
若容器回收,文件的读写就会失效。 函数目前不支持持久化。 典型场景 需要对OBS上的文件进行处理,可以先把文件下载到/tmp目录。 函数运行过程中产生了一些数据想保存到OBS,可以先在/tmp目录下创建新文件,然后把这些数据写到里面,接下来上传该文件到OBS。 获取上传的文件 以Python语言为例,如果用户用os
连接DCS单机、主备、读写分离、Proxy集群实例 from redis.backoff import ExponentialBackoff from redis.retry import Retry from redis.client import Redis from redis
下表介绍使用FunctionGraph函数对OBS中的图片进行压缩的总体操作流程。 表2 操作流程 操作流程 说明 步骤一:创建两个OBS桶 创建两个OBS桶,源桶用于存储原始图片,目标桶用于存储压缩后图片。 步骤二:创建云服务委托 创建云服务委托,授权FunctionGraph使用其他云服务,确保能与OBS服务协同工作。
使用OBS触发器 本节介绍创建OBS触发器,上传图片压缩包至存储桶,产生事件触发函数运行,供用户了解OBS触发器的使用方法。OBS触发器创建以后,不能停用,只能删除。 关于OBS触发器事件源的具体介绍,请参见支持的事件源。 表1 OBS支持事件类型 事件 说明 ObjectCreated
更多函数资源的限制,请参见使用限制。 操作步骤 以使用对象存储服务OBS控制台为例,介绍如何获取存储在OBS桶中的函数代码包对象URL,并将代码包文件上传至FunctionGraph。 登录对象存储服务OBS控制台,创建桶并将函数代码包对象上传至OBS桶中。请参考通过URL访问OBS对象复制所需的代码包对象URL。
灵活扩展,业务爆发时可以自动调度资源运行更多函数实例以满足处理需求。 事件触发,通过上传文件到OBS,触发FunctionGraph函数进行文件处理。 按需收费,只有对函数处理文件数据的时间进行计费,无需购买冗余的资源用于非峰值处理。 使用对象存储服务(OBS),创建两个桶,上传图片,通过构建和触发函数对图片进行压缩,参考使用函数压缩图片。
对象过期时间(天):过期后的对象会被OBS服务端自动清理。单位:天,取值范围:0-365,0表示不过期。 数据接入服务(DIS) 目标通道:选择接收通知消息的目标通道。 消息通知服务(SMN) 主题名称:选择接收通知消息的主题。 失败时通知 目标服务:函数执行失败时发送通知到以下目标服务。 函数工作流(FunctionGraph)
作失败后重试特定次数,这样能大幅度降低暂时性故障影响。例如:发生瞬时的网络抖动、磁盘抖动导致服务暂时不可用或者调用超时的情况下,提高Redis操作的成功概率。 连接DCS单机、主备、读写分离、Proxy集群实例添加Retry配置,退避策略为指数退避(ExponentialBack
-output中。 上传文件生成事件 登录对象存储服务控制台,进入dew-bucket-input桶对象界面,上传image.jpg文件,如图1所示。 图1 上传文件 触发函数自动运行 上传文件至dew-bucket-input桶,OBS生成事件触发函数运行,对文件加解密,输出文
与其他服务的关系 FunctionGraph服务与以下云服务的对接,实现相关功能,如表1所示。 表1 对接服务 服务名称 实现功能 消息通知服务(SMN) 构建FunctionGraph函数来处理SMN的通知,相关内容请参考消息通知服务用户指南。 API网关(API Gateway)
选择待配置的函数,单击进入函数详情页。 选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框,本章节以创建对象存储OBS为例。 图1 创建触发器 设置以下信息: 触发器类型:选择“对象存储服务 OBS”。 触发器名称:填写自定义的名称。 事件类型:选择需要的事件类型。 单击“确定”,完成EG触发器的创建。
output中。 上传图片生成事件 登录对象存储服务控制台,进入hugb-bucket-input桶对象界面,上传image.jpg图片,如图1所示。 图1 上传图片 触发函数自动运行 上传图片至hugb-bucket-input桶,OBS生成事件触发函数运行,为图片打水印,输出
图片上传至your-bucket-input桶,使用工具模拟客户端触发函数流运行,将上传图片旋转180°,并以流数据返回给客户端。 上传图片 登录对象存储服务控制台,进入your-bucket-input桶对象界面,上传image.jpeg图片如图1,上传完成后如图2所示。 图1 示例 图2
“监控” “日志” 随后单击蓝色的请求id查看日志。 图3 查看日志 图4 查看请求id详情 可以对程序进行修改,使数据可以用于调用其他系统或进行持久化存储,如存储到obs等。 父主题: 使用FunctionGraph函数对IoTDA中的设备坐标数据进行转换
云端数据加工处理 在OBS对象存储服务创建OBS桶和OBS对象,并配置事件通知。 在OBS对象存储服务创建OBS桶和OBS对象,如图1所示,创建过程请参考创建OBS桶。 图1 OBS桶 创建的OBS桶名为“logstore”,OBS对象为“log.txt”用于存储日志数据。 创建委托
创建函数前,需要创建1个OBS桶,用来保存用户上传的图片。 OBS桶创建以后,需要创建“委托”,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源。 创建OBS桶 上传图片的源桶和函数必须处于同一个区域下。 操作步骤 在服务控制台左侧导航栏,选择“存储
华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 已创建OBS桶,用于存放打包好的依赖包文件,更多详情请参见创建桶。 开始使用本案例前请在本地安装好18.15.0版本的Node.js运行环境。 当前华为云函数工作流服务支持的Node.js运行时最高版本为18.15.0、Next
准备 创建函数及添加事件源之前,需要创建两个OBS桶,分别用来保存用户上传的图片和打水印后输出的图片。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源。 创建OBS桶 注意事项 上传图片的源桶、输出图片的目标桶和函数必须处于同一个区域下。
创建函数及添加事件源之前,需要创建两个OBS桶,分别用来保存用户上传的文件和加/解密后输出的文件。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源,本指导以加密文件为例: 创建OBS桶 上传文件的源桶、输出文件的目标桶和函数必须处于同一个区域下。
配置函数 能否在函数环境变量中存储敏感信息? FunctionGraph的函数如何读写上传的文件? 为函数挂载文件系统时,报“failed to mount exist system path” FunctionGraph如何实现域名解析? FunctionGraph如何通过域名访问专享版APIG中注册的接口?