检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
编辑:支持在编码框中,对代码进行撤销、恢复、剪切、复制、粘贴、查找和替换操作。 设置:支持设置编码框中代码字体大小、编码框主题颜色和是否自动格式化。 图4 编码区管理 父主题: 配置函数代码
总体思路 在本地进行函数编码后,将代码文件上传到OBS桶,并使用OBS链接创建函数。步骤如下: 创建函数工程:在本地进行编码实现函数功能。 上传工程到OBS桶:将代码文件压缩为zip格式并上传到已创建的OBS桶中,记录代码文件的OBS链接。
资产识别与管理 在函数的环境变量中,若有敏感信息例如账号和密码、Ak/Sk等,建议通过配置加密环境变量。不配置加密环境变量,则会在界面或API返回结果中明文展示。 在使用触发器、配置VPC访问、使用自定义镜像、挂载SFS等场景下,FunctionGraph需要与其他云服务协同工作,
以使用函数做视频转码为例,视频文件大小从MB到GB,不同编码格式和分辨率对转码需要的计算资源要求差别很大。为了保证转码性能,通常需要配置一个很大的资源规格,但是在处理低分辨率视频(例如短视频)时,会造成资源浪费。
表6 FuncCode 参数 参数类型 描述 file String 函数代码,如果不为空必须进行base64编码,为空时使用默认的代码。 link String 函数代码链接。
Java Python Go 更多 导入函数,文件名为"test.zip",类型为zip,文件base64编码为"xxx"。
调试函数 在函数详情页的编码区中,通过配置测试事件进行函数调试。 在线调试函数 单击函数名称进入函数详情页,如图1所示,在“代码”页签下可以“配置测试事件”和“测试”函数进行在线调试。 图1 在线调试函数 父主题: 使用FunctionGraph函数访问Redis数据
步骤五:搭建函数更新流水线 此流水线的主要作用是将functions仓库的helloworld函数代码配置发布更新到FunctionGraph平台。 新建构建任务 在“构建&发布 > 编译构建”页面,单击“新建任务”。 源码仓库选择functions仓库,构建模板选择“空白构建模板
通过APIG服务调用函数服务时,isBase64Encoded的值默认为true,表示APIG传递给FunctionGraph的请求体body已经进行Base64编码,需要先对body内容Base64解码后再处理。 函数必须按以下结构返回字符串。
自动化部署 部署环境准备 使用CodeArts托管函数代码 deploy.py代码示例 cam.yaml解析
其他:函数会返回值作为对象进行json编码,并将编码后的内容作为HTTP响应的Body,同时设置响应的“Content-Type”头为“text/plain”。 当函数的事件源是APIG时,相关约束条件请参考Base64解码和返回结构体的说明。
使用FunctionGraph函数和CTS识别非法IP的登录登出操作 案例概述 准备 构建程序 添加事件源 处理结果 父主题: 功能应用类实践
其它:FunctionGraph函数服务会将返回值作为对象进行json编码,并将编码后的内容作为HTTP响应的Body,同时设置响应的"Content-Type"头为"application/json"。
可以使用FunctionGraph实时创建图像缩略图、转换视频编码、进行数据文件汇聚、筛选等。 其优势有: 灵活扩展,业务爆发时可以自动调度资源运行更多函数实例以满足处理需求。 事件触发,通过上传文件到OBS,触发FunctionGraph函数进行文件处理。
huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkfunctiongraph.v2 import * if __name__ == "__main__": # 该示例仅为测试使用,在生产环境中请勿硬编码
依赖硬编码Host环境(如hostname或者hostip)的函数,在迁移到其他主机上时,使用快照式冷启动可能会有问题。请先提前联系客服进行确认,建议避免依赖这些变量。 当前仅支持基于x86机器开发的应用。
model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/functiongraph/v2/region" ) func main() { // 该示例仅为测试使用,在生产环境中请勿硬编码
对象名编码 必选参数。 选择是否对对象名进行编码。默认为开启状态。 单击“确定”,完成触发器的创建。 配置EventGrid事件触发函数 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 选择待配置的函数,单击函数名称进入函数详情页。
setBase64Encoded(boolean isBase64Encoded) 设置body是否经过base64编码。 setBase64EncodedBody(String body) 将输入进行base64编码,并设置到Body中。
require('@huaweicloud/huaweicloud-sdk-core'); const functiongraph = require("@huaweicloud/huaweicloud-sdk-functiongraph"); // 该示例仅为测试使用,在生产环境中请勿硬编码