检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
与其他服务的关系 FunctionGraph服务与以下云服务的对接,实现相关功能,如表1所示。 表1 对接服务 服务名称 实现功能 消息通知服务(SMN) 构建FunctionGraph函数来处理SMN的通知,相关内容请参考消息通知服务用户指南。 API网关(API Gateway)
成功时通知 目标服务:执行成功时发送通知到以下目标服务 函数工作流(FunctionGraph) 对象存储服务(OBS) 数据接入服务(DIS) 消息通知服务(SMN) 失败时通知 目标服务:执行失败时发送通知到以下目标服务 函数工作流(FunctionGraph) 对象存储服务(OBS)
准备 创建函数及添加事件源之前,需要创建两个OBS桶,分别用来保存用户上传的图片和打水印后输出的图片。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源。 创建OBS桶 注意事项 上传图片的源桶、输出图片的目标桶和函数必须处于同一个区域下。
Go SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Go SDK信息说明 SDK信息 说明 安装 go get -u github.com/huaweicloud/huaweicloud-sdk-go-v3
Python引入依赖库示例如下: from com.obs.client.obs_client import ObsClient Nodejs引入依赖库示例如下: const ObsClient = require('esdk-obs-nodejs'); 对于标准库和Function
创建函数及添加事件源之前,需要创建两个OBS桶,分别用来保存用户上传的文件和加/解密后输出的文件。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源,本指导以加密文件为例: 创建OBS桶 上传文件的源桶、输出文件的目标桶和函数必须处于同一个区域下。
准备 创建函数及添加事件源之前,需要创建两个OBS桶,分别用来保存用户上传的图片和压缩处理后的图片。 OBS桶创建以后,需要创建“委托”,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源。 创建OBS桶 注意事项 上传图片的源桶、输出图片的目标桶和函数必须处于同一个区域下。
OBS事件 华为云函数可以由不同的event源触发。这些事件源可以通过event定义和配置。 OBS事件 此示例设置一个OBS事件,每当对象上传到my-service-resource时,该事件将触发first函数。 # serverless.yml functions: first:
Java SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Java SDK信息说明 SDK信息 说明 安装 <dependency> <groupId>com.huaweicloud.sdk</groupId>
Python SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Python SDK信息说明 SDK信息 说明 安装 pip install huaweicloudsdkfunctiongraph 相关链接
Node.js SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Node.js SDK信息说明 SDK信息 说明 安装 npm i @huaweicloud/huaweicloud-sdk-functiongraph
给要求高,通过API调用并行运行加快处理速度。 数据源集成 离线GPU任务对数据源的需求多种多样,处理过程中需要与多种存储产品(例如对象存储OBS)和多种消息产品(例如消息队列)进行频繁交互。 功能优势 函数计算为离线异步应用类工作负载提供以下功能优势: 业务架构简化 对于长耗时
添加事件源 OBS桶及函数创建以后,可以为函数添加事件源,添加OBS事件源是通过创建OBS应用事件源实现的,步骤如下。 用户进入fss_examples_image_watermark函数详情页,在“触发器”页签,单击“创建触发器”,弹出“创建触发器”界面。 触发器类型选择“OB
自定义的依赖包名称,用于识别不同的依赖包。 代码上传方式 分为上传ZIP文件和从OBS上传文件。 上传ZIP文件:需单击“添加文件”,上传ZIP文件。 OBS链接URL:需填写“OBS链接URL”,OBS存储链接获取方法请参见OBS对象存储服务。 运行时语言 选择运行时语言。 描述 对于依赖包的描述信息,可以不填。
如何调用DNS服务的接口解析内网域名,请参见解析DNS内网域名。 开启异步通知 目标服务为OBS时: OBS Administrator obs:bucket:HeadBucket(获取桶元数据) obs:bucket:CreateBucket(创建桶) obs:object:
添加事件源 OBS桶及函数创建以后,可以为函数添加事件源,添加OBS事件源是通过创建OBS应用事件源实现的,步骤如下。 用户进入fss_examples_image_thumbnail函数详情页,在“设置 > 触发器”页签,单击“创建触发器”,弹出创建触发器界面。 触发器类型选择
添加事件源 OBS桶及函数创建以后,可以为函数添加事件源,是通过创建“OBS应用事件源”实现的,步骤如下。 用户进入fss_examples_dew函数详情页,在“触发器”页签,单击“创建触发器”,弹出“创建触发器”界面。 触发器类型选择“OBS应用事件源”,填写触发器配置信息,如图1所示。
触发器类型。(当前OBS触发器暂不支持中国站。) TIMER: "定时触发器。" APIG: "APIG触发器。" CTS: "云审计服务触发器。" DDS: "文档数据库服务触发器。" DMS: "分布式服务触发器。" DIS: "数据接入服务触发器。" LTS: "云日志服务触发器。"
应用扩展 本案例展示了函数工作流服务+LTS云日志服务实现日志云端处理并推送告警消息的功能,并将告警日志投递至OBS桶中集中存储。函数工作流服务+LTS云日志服务的应用广泛,如以下应用场景:利用函数的TIMER触发器,定时对存储在OBS桶中的日志数据进行个性化分析和处理。 父主题:
getUserData('obs_address') outputBucket = context.getUserData('obs_output_bucket') if obs_address is None: obs_address = '{obs_address_ip}'