检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
函数工作流的常见使用场景? Web类应用:比如小程序、网页/App、聊天机器人、BFF等。 事件驱动类应用:文件处理、图片处理、视频直播/转码、实时数据流处理、IoT规则/事件处理等。 AI类应用:三方服务集成、AI推理、车牌识别。 具体请参考应用场景。 父主题: 通用问题
构建程序 本例提供了DIS数据流格式转换的源码和程序包(包含函数依赖),使用空白模板创建函数,用户可以下载、学习使用。 创建工程 本例使用Java语言实现DIS数据流格式转换功能,有关函数开发的过程请参考Java函数开发指南,本例不再介绍业务功能实现的代码。 下载样例源码(fss
例”,输入实例名称,单击“确定”。 图1 创建新实例 进入CodeArts IDE Online在线编辑页面。 首次进入CodeArts IDE Online在线编辑页面,提示选择切换为中文语言。 在编辑页面左侧导航栏单击FunctionGraph插件后,左侧编辑框中的REMOTE
说明 使用函数压缩图片 基于函数工作流服务,并配合使用“OBS应用事件源”触发器实现图片压缩功能。(当前“OBS应用事件源”仅支持华北-北京四、华北-乌兰察布一、华东-上海一。) 使用函数为图片打水印 基于函数工作流服务,并配合使用“OBS应用事件源”触发器实现图片打水印功能。(当
按需收费,只有对函数处理文件数据的时间进行计费,无需购买冗余的资源用于非峰值处理。 使用对象存储服务(OBS),创建两个桶,上传图片,通过构建和触发函数对图片进行压缩,参考使用函数压缩图片。 实时数据流处理 使用FunctionGraph和DIS处理实时流数据,跟踪应用程序活动、顺序事务处理、分析
常用实践,帮助您更好的使用函数工作流。 表1 常用最佳实践 实践 描述 使用函数压缩图片 本实践基于函数工作流服务实践所编写,用于指导您使用函数工作流服务实现图片压缩的功能 使用函数为图片打水印 本实践基于函数工作流服务实践所编写,用于指导您使用函数工作流服务实现为图片打水印的功能。 函数+LTS:日志实时分析实战
用户在编辑函数代码时支持类似工程方式的管理,可以创建文件、文件夹并对其进行编辑。使用函数工作流控制台中的在线代码编辑器,可以在线编写函数代码,如果代码是上传zip包的方式,则前端进行相应解压展示,并支持在线编辑修改。同时,在线代码编辑器支持在线测试和保存,可以查看函数执行的返回、执行摘要和日志,该功能需要在编辑器全屏模式下使用。
方案概述 应用场景 端侧文件上传云服务器是Web和App应用的一类场景,例如服务运行日志的上报,Web应用图片上传等,函数可作为后端,结合APIG提供通用的API处理这类场景。本章节以NodeJS和Python语言为例,指导用户如何开发后端解析函数,获取上传的文件。 约束与限制 单次请求上传文件大小不超过6MB。
构建函数程序 编辑函数程序 打开创建的函数iotdemo,复制以下坐标转换代码,仅供测试不建议用于生产用途,用户也可以根据自己的需要修改。 # -*- coding:utf-8 -*- import json import math from math import pi def
函数名(函数参数,Context参数) 作用域:提供给FunctionGraph调用的用户函数必须定义为public。 返回参数:用户定义,FunctionGraph负责转换为字符串,作为HTTP Response返回。对于返回参数对象类型,HTTP Response该类型的JSON字符串。 函数名:用户定义函数名称。
准备 案例实现的功能是将DIS数据格式转换,存储到表格存储服务中,所以需要先在表格存储服务创建集群,在创建集群时需要使用虚拟私有云。 创建函数之前,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到DIS和CloudTable资源。 创建虚拟私有云
输入,比如上述图片处理工作流中,图片压缩的结果是打水印步骤的输入数据。 在普通的服务编排中,由于需要精准控制各个服务的执行顺序,所以控制流是工作流的核心部分。然而在文件处理等流式处理场景中,对控制流的要求并不高,以上述图片处理场景举例,可以对大图片进行分块处理,图片压缩和加水印的
使用环境变量设置以下信息:安装文件的目录、存储输出的位置、存储连接和日志记录设置等。这些设置与应用程序逻辑解耦,在需要变更设置时,无需更新函数代码。 在如下函数代码片段中,参数“obs_output_bucket”为图片处理后存储地址。 def handler(event, context): srcBucket
案例概述 场景介绍 通过LTS云日志服务,快速完成ECS等服务器的任务运行日志采集、加工和转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,过滤出告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。
FunctionGraph函数工程打包有哪些规范(限制)? 函数除了支持在线编辑代码,还支持上传ZIP、JAR、引入OBS文件等方式上传代码。具体规范请参考打包规范说明、ZIP工程包示例。 打包规范说明 函数除了支持在线编辑代码,还支持上传ZIP、JAR、引入OBS文件等方式上传代码,函数工程的打包规范说明如表1所示。
使用空白模板创建函数 使用模板创建函数 使用容器镜像部署函数 05 实践 创建业务所需函数,结合不同的触发器,实现不同的功能。 应用 使用函数压缩图片 使用函数为图片打水印 使用函数处理DIS数据 函数+APIG:处理文件上传 定时开关华为公有云虚拟机 函数+LTS:日志实时分析实战 函数+CTS:登录/登出安全分析实战
用函数工作流服务实现处理DIS数据的功能。 场景介绍 使用数据接入服务(DIS)采集IOT实时数据流,需要将采集到的数据进行处理(比如格式转换),然后存储到表格存储服务(CloudTable Service)中,使用FunctionGraph函数可以实现此功能。 实现流程 创建虚拟私有云和集群。
运行日志的采集、加工和转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,把过滤后的日志转存到另外的日志流中,如图1所示。 图1 处理流程 案例价值点 通过云日志服务LTS,快速完成日志采集和转换。 基于Serverle
函数工作流 使用定时触发器 02:18 使用定时触发器 函数工作流 创建依赖包 02:42 创建依赖包 函数工作流 使用函数压缩图片 05:32 使用函数压缩图片
函数工程打包规范 打包规范说明 函数除了支持在线编辑代码,还支持上传ZIP、JAR、引入OBS文件等方式上传代码,函数工程的打包规范说明如表1所示。 表1 函数工程打包规范 编程语言 JAR包 ZIP包 OBS文件 Node.js 不支持该方式 假如函数工程文件保存在“~/Cod