检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
FunctionGraph函数初始化入口 在示例代码中,initializer方法内创建Redis客户端,并在创建函数时配置了初始化函数,如下: def initializer(context): global redis_client redis_client =
导出函数 功能介绍 导出函数 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/fgs/functions/{function_urn}/export 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目
最小值:0 最大值:1000000 size Integer 返回对象的大小 最小值:0 最大值:200 workflows Array of WorkflowSimpleInfo objects 返回的实体对象 数组长度:0 - 200 表4 WorkflowSimpleInfo
Redis连接池 在示例代码中使用了Redis连接池(BlockingConnectionPool),配置了最大连接数(max_connections)和连接池耗尽后获取连接的最大等待时间(timeout),代码片段如下: pool = BlockingConnectionPool
案例概述 本案例展示了函数工作流服务+LTS云日志服务实现日志云端处理并推送告警消息的功能,并将告警日志投递至OBS桶中集中存储。 场景介绍 通过LTS云日志服务,快速完成ECS等服务器的任务运行日志采集、加工和转换。
OBS:包含bucket桶,对象目录前缀prefix,对象默认expires过期时间[0~365]天,0默认不过期。 SMN:包含smn 主题topic_urn。 DIS:包含DIS 通道名stream_name。
什么是FunctionGraph FunctionGraph是一项基于事件驱动的函数托管计算服务。使用FunctionGraph函数,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费,不执行不产生费用
添加事件源 创建LTS触发器 选择准备中创建的日志组和日志流,创建LTS触发器,LTS触发器配置如图1所示。 图1 创建LTS触发器 云日志服务LTS的消费端在日志累积大小或日志累积时间满足条件时消费LTS日志数据,并根据订阅该组LTS日志数据的函数URN触发函数执行。 父主题:
添加事件源 创建LTS触发器 选择准备中创建的日志组和日志主题,创建LTS触发器。LTS触发器配置如图1所示。 LTS日志服务的消费端在日志累积大小或日志累积时间满足条件时消费LTS日志数据,并根据订阅该组LTS日志数据的函数URN触发函数执行。 图1 创建LTS触发器 父主题:
进阶使用:使用专享版APIG触发器提升性能 应用场景 通过应用中心部署的Stable Diffusion应用使用的APIG触发器为共享版APIG,其带宽等资源由所有共享版APIG用户共同使用。因此,若业务使用需求高,建议将函数触发器改用为专享版APIG触发器,专享版与共享版APIG
部署环境准备 本章节以Linux主机为例,指导您基于KooCLI和软件开发生产线CodeArts搭建一套FunctionGraph函数的CI/CD。 云服务器ECS 该服务器作为CodeArts部署任务的部署主机,用于部署更新FunctionGraph函数。 规格:1vCPUs |
步骤五:搭建函数更新流水线 此流水线的主要作用是将functions仓库的helloworld函数代码配置发布更新到FunctionGraph平台。 新建构建任务 在“构建&发布 > 编译构建”页面,单击“新建任务”。 源码仓库选择functions仓库,构建模板选择“空白构建模板
修改函数的metadata信息 功能介绍 修改指定的函数的metadata信息。 调用方法 请参见如何调用API。 URI PUT /v2/{project_id}/fgs/functions/{function_urn}/config 表1 路径参数 参数 是否必选 参数类型 描述
添加事件源 添加APIG触发器(每个函数分别创建触发器),通过HTTP请求调用函数。 填写API名称,选择分组、发布环境、认证、请求协议、超时时间等配置,单击”确定”完成触发器创建,如图1所示。 图1 创建触发器 创建后可以获得一个调用URL,通过这个URL进行函数的调用,如图2所示
OBS桶:最大可上传300M压缩后的代码包。 前端页面展示代码大小 20MB 私有依赖包 直接上传ZIP文件:上传的文件大小限制为10M,如超过10M,请通过OBS上传。 从OBS上传文件:格式为OBS URL链接,文件必须为ZIP格式。
执行事件(event):函数执行界面由用户输入的执行事件参数, 格式为JSON对象。 上下文环境(context):Runtime提供的函数执行上下文,其接口定义在SDK接口说明。
Java函数开发指南(使用IDEA工具普通Java项目) 开发Java函数,以下给出Demo示例步骤: 创建函数工程 配置idea,创建java工程JavaTest,如图创建工程所示 图1 创建工程 添加工程依赖 根据Java SDK下载提供的SDK地址,下载JavaRuntime
使用函数模板创建函数 FunctionGraph提供了多种场景的函数模板,在使用函数模板创建函数时,可实现代码、环境变量自动填充,快速构建函数应用。 创建函数 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击右上方的“创建函数”,进入“创建函数”页面。 创建方式选择
构建程序 本例提供了DIS数据流格式转换的源码和程序包(包含函数依赖),使用空白模板创建函数,用户可以下载、学习使用。 创建工程 本例使用Java语言实现DIS数据流格式转换功能,有关函数开发的过程请参考Java函数开发指南,本例不再介绍业务功能实现的代码。 下载样例源码(fss_examples_dis_cloudtable_src.zip
快速入门 本章节旨在帮助您尽快了解Serverless Framework的使用。 初始化设置 您需要安装和配置以下几个前提条件: 在本地计算机上安装Node.js 14.x或更高版本,详情请参见安装Node.js和NPM。 安装Serverless Framework开源CLI版本