检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例概述 本手册基于函数工作流服务实践所编写,用于指导您使用函数工作流服务实现处理DIS数据的功能。 场景介绍 使用数据接入服务(DIS)采集IOT实时数据流,需要将采集到的数据进行处理(比如格式转换),然后存储到表格存储服务(CloudTable Service)中,使用Fun
构建程序 本案例提供了实现告警日志功能的程序包,使用空白模板创建函数,用户可以下载(index.zip)学习使用。 创建功能函数 创建实现日志提取功能的函数,将示例代码包上传。创建过程请参考创建函数,运行时语言选择“Python2.7”,委托名称选择创建委托中的“serverless_trust”。
凭证 Serverless Framework需要访问您的华为云账号的凭证,代表您创建和管理资源。 创建华为云账号 打开华为云官网,选择“注册”,详情请参考注册华为账号并开通华为云。 获取凭证 您需要创建凭证,以便Serverless可以使用它们在项目中创建资源。 进入“访问密钥”页面,获取您华为云账号的访问密钥。
函数异步执行并返回预留实例ID(已废弃) 功能介绍 函数异步执行并返回预留实例ID用于场景指客户端请求执行比较费时任务,不需要同步等待执行完成返回结果,该方法提前返回任务执行对应的预留实例ID, 如果预留实例有异常,可以通过该实例ID把对应实例删除(该接口主要针对白名单用户)。 目前仅支持广州
构建程序 本例提供了为图片打水印功能的程序包,使用空白模板创建函数,用户可以下载(watermark.zip)学习使用。 创建程序包 本例使用Python语言实现为图片打水印的功能,有关函数开发的过程请参考Python函数开发。本例不再介绍业务功能实现的代码,样例代码目录如图1所示。
FunctionGraph监控告警 Redis自动重试机制能大幅度降低暂时性故障影响,但不能解决故障,故障不及时处理可能导致故障升级,所以需要告警来及时感知代码运行情况。FunctionGraph支持通过创建告警规则完成对函数运行的实时监控,当函数指标出现满足设定规则时产生告警,
启用禁用函数 FunctionGraph支持对函数进行禁用和启用操作,已禁用的函数不能被调用执行。 约束与限制 只能禁用“latest”版本的函数,不能禁用已经发布的函数版本。 基于已禁用的“latest”版本重新发布新版本,发布后的新版本也处于禁用状态且不能启用。 当函数处于禁用状态时可以修改代码,但不能执行函数。
获取账号、IAM用户、项目、用户组、区域、委托的名称和ID 获取账号、IAM用户、项目的名称和ID 从控制台获取账号名、账号ID、用户名、用户ID、项目名称、项目ID 在调用接口时,部分URI中需要填入用户名、用户ID、账号名、账号ID、项目名称、项目ID,在“我的凭证”页面可以获取这些信息。
处理结果 若用户触发账号的登录/登出操作,订阅服务类型日志被触发,日志会直接调用用户函数,通过函数代码对当前登录/出的账号进行IP过滤,若不在白名单内,可收到SMN发送的通知消息邮件,如图1所示。 图1 告警消息邮件通知 邮件信息中包含非法请求ip地址和用户执行的动作(login/logout)。
为函数挂载文件系统时,报“failed to mount exist system path” 您可以将文件重新挂载在新的路径下。 用户/用户组ID: 可设置为1000之外的其他数字id,如果为-1默认设置为1003。用户/用户组ID用于对访问远端文件系统的目录权限进行控制。 文
函数类型选型 本文介绍函数工作流支持的函数类型的适用场景及差异,供您进行函数类型选型。 函数选型建议 为满足不同场景下的用户需求,函数工作流支持通过在线编写代码、上传代码文件或者使用容器镜像,创建事件函数和HTTP函数,且支持使用GPU计算资源。 在使用函数工作流时,可以根据业务
为什么首次调用函数时速度会比较慢? 因为函数是冷启动的,所以如果有初始化或者函数中有第一次执行比较耗时的操作(例如加载函数代码及依赖包),第一次请求会比较慢,后面接着的请求就会很快,因为此时容器还没有销毁。如果间隔一分钟没有请求,容器就会销毁。 如果您使用的是C#或者Go语言,因
配置函数的动态内存 默认情况下,一个函数唯一绑定了一个资源规格。开启动态内存可以让函数在处理指定请求时,设置本次处理中函数实例使用的资源规格。如果不指定资源规格,函数将使用默认配置的资源规格。 以使用函数做视频转码为例,视频文件大小从MB到GB,不同编码格式和分辨率对转码需要的计
配置函数流的循环控制器组件 循环控制器组件可以用来对输入数组中每个元素进行循环处理,每次循环会执行一次循环内部的子流程或函数。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。 循环节点内部子流程需要满足如下规则:
fmt.Println(err) } } 更多 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 200 OK 400 Bad Request 请求错误。 401 Unauthorized
String 消息体的类型(格式) 表3 请求Body参数 参数 是否必选 参数类型 描述 func_name 是 String 函数名称。 可包含字母、数字、下划线和中划线,以大/小写字母开头,以字母或数字结尾,长度不超过60个字符。 最小长度:1 最大长度:60 package 是
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 约束与限制 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、
fmt.Println(err) } } 更多 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 200 OK 400 Bad Request 请求错误。 401 Unauthorized
如何制作函数依赖包? 制作函数依赖包推荐在EulerOS环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。 搭建EulerOS环境
基本概念 函数 函数是处理事件的自定义代码。 事件源 事件源是发布事件的公有云服务或自定义应用程序。 运行时 运行时为相应的编程语言提供执行环境,用于传递函数的调用事件、上下文信息和响应。 函数工作流支持的运行时请参见函数开发简介。 同步调用 同步调用指的是客户端请求需要明确等到