检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用已有SpringBoot项目构建HTTP函数 方案概述 本章节主要指导使用Springboot开发应用的用户,部署业务到FunctionGraph。 用户通常可以使用SpringInitializr或者IntelliJ IDEA新建等多种方式构建SpringBoot,本章节以Spring
案例概述 场景介绍 MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
context参数中包含一些函数的运行时信息,例如:request id、临时AccessKey、function meta等。 SDK接口 Context类中提供了许多上下文方法供用户使用,其声明和功能如所示。 表1 Context类上下文方法说明 方法名 方法说明 getRequestID() 获取请求ID。
rue,其它框架同理。相关约束条件请参考Base64解码和返回结构体的说明。 HTTP函数默认开放端口为8000。 Context类中提供了许多上下文方法供用户使用,其声明和功能请参见表1。 前提条件 准备一个bootstrap启动文件,作为HTTP函数的启动文件。举例如下: /
当函数是预留实例模式且开启空闲模式时,在预留实例生命周期内中,空闲时间产生的计量时间不包含在每月400,000GB-秒的免费额度里。 表1显示了函数工作流配置不同内存规格时的免费执行额度。 表1 免费执行额度 内存(MB) 每个月的免费执行额度(秒) 128 3,200,000 256
配置函数流的子流程控制器组件 函数工作流服务可以把一些“函数流”作为“子流程”组合成一个新的函数流,这样可以抽取出一些函数流作为公共流进行使用,减少函数流的重复编排。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。
或邮件的方式通知用户。客户收到告警后,可以配置和查看函数的调用日志来分析故障原因,解决故障。 FunctionGraph函数监控信息,提供了调用次数、运行时间、错误次数、拒绝次数和资源统计监控指标。建议对监控指标中的错误次数和运行时间-最大运行时间创建告警配置,这样就能及时感知到如下情况:
部署和使用AI对话ChatGLM3应用 本章节介绍如何通过函数工作流控制台部署AI对话ChatGLM3应用。部署成功后,即可使用内置默认模型和临时域名开始AI对话体验。 前提条件 完成部署AI对话ChatGLM3准备工作,委托中包含“SWR Admin”、“VPC Administrator”和“Server
OBS方式上传函数代码 本章节指导您使用函数工作流控制台,上传存储在OBS中的代码文件进行函数代码部署。 操作场景 当函数的代码包大小不超过300MB时,可以使用从OBS上传的方式部署代码包。 当前所有运行时均支持从OBS上传函数代码,请参考函数工程打包规范在本地打包代码文件并上
context参数中包含一些函数的运行时信息,例如:request id、临时AccessKey、function meta等。 SDK接口 Context类中提供了许多上下文方法供用户使用,其声明和功能如表1所示。 getToken()、getAccessKey()和getSecretKey()方法返回
删除触发器 功能介绍 删除触发器。 调用方法 请参见如何调用API。 URI DELETE /v2/{project_id}/fgs/triggers/{function_urn}/{trigger_type_code}/{trigger_id} 表1 路径参数 参数 是否必选 参数类型
在线编辑函数代码 编写函数业务代码是配置函数实现业务需求的第一步,本章节指导您使用函数工作流控制台在线编辑与部署函数代码。 操作场景 FunctionGraph预装了适用于Node.js、Python、PHP、定制运行时和HTTP函数的开发工具包,如果函数代码仅依赖于开发工具包库
vpc:ports:create 查询VPC vpc:vpcs:get 查询子网 vpc:subnets:get 解析内网域名:如VPC中配置了内网域名,需要为函数配置“DNS ReadOnlyAccess”委托权限以解析内网域名。 开启函数访问VPC内资源操作步骤: 登录函数工作流控制台,在左侧的导航栏选择“函数
remove function命令 remove function命令,是删除指定函数的命令。默认会把整个函数删除,包含所有的版本、别名以及触发器。 当执行命令remove function -h/remove function --help时,可以获取帮助文档。 参数解析 表1
删除指定函数的所有触发器 功能介绍 删除指定函数所有触发器设置。 在提供函数版本且非latest的情况下,删除对应函数版本的触发器。 在提供函数别名的情况下,删除对应函数别名的触发器。 在不提供函数版本(也不提供别名)或版本为latest的情况下,删除该函数所有的触发器(包括所有版本和别名)。
直接上传函数代码 本章节指导您使用函数工作流控制台,直接上传本地开发完成的zip或jar代码文件进行函数代码部署。 操作场景 当函数的代码包大小不超过40MB时,可以使用函数工作流控制台直接上传代码包进行部署。 请参见函数工程打包规范在本地打包代码文件,如需修改函数执行入口,请参见修改函数执行入口。
情参考图4。 图4 配置函数 验证结果 保存后执行函数时,就能在代码中解析该域名中配置的所有IPV4类型的域名。 图5 执行函数 用户配置了VPC域名解析后,如果在DNS云解析服务中修改域名对应的IP,10min后稳定生效。 FunctionGraph的容器镜像函数解析DNS内网域名
patterns: - '!tmp/**' - '!.git/**' 产物 要完全控制打包过程,您可以指定自己的产物ZIP文件。 如果配置了此功能,Serverless将不会压缩您的服务,因此将忽略patterns,可以选择使用产物或模式进行部署。 如果您的开发环境允许您像Mav
注册OpenTelemetry API http://${EXTENSION_API_ADDR}/telemetry 您可以通过 EXTENSION_API_ADDR 环境变量得到平台开放的提供注册的API地址,例如对于Python,EXTENSION_API_ADDR的获取方式为os
构建程序 本案例提供了实现提取告警日志功能的程序包,使用空白模板创建函数,用户可以下载(fss_examples_logstore_warning.zip)学习使用。 创建功能函数 创建实现日志提取功能的函数,将示例代码包上传。创建过程请参考创建函数,运行时语言选择“Python2