检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用FunctionGraph函数作为后端实现APIG的自定义认证能力 方案概述 资源规划 构建程序 添加事件源 调试并调用API 父主题: 功能应用类实践
strings 依赖版本id列表 表4 FuncCode 参数 是否必选 参数类型 描述 file 否 String 函数代码,如果不为空必须进行base64编码,为空时使用默认的代码。 link 否 String 函数代码链接。 响应参数 状态码: 200 表5 响应Body参数 参数
FunctionGraph支持多种运行时语言,包括Python 、Node.js、Java、Go、C#、PHP、Cangjie及自定义运行时等,不同语言所支持的版本有所差异。 表1 运行时语言 支持版本 开发指导 Node.js 6.10(6.10.1)、8.10(8.10.0)、10.16(10.16.1)、12.13(12
extensionDemo.sh test.py 代码内容参考extension.zip。 其中extensionDemo.sh 中的语言所在路径参考下表。 表1 多语言路径说明 语言 路径 Java8 /opt/function/runtime/java8/rtsp/jre/bin/java Java11
security_groups Array of strings 安全组 表6 StrategyConfig 参数 参数类型 描述 concurrency Integer 单函数最大实例数,v1取值0和-1,v2取值-1到1000 -1代表该函数实例数无限制 0代表该函数被禁用 concurrent_num Integer
启动做了大量优化,针对用户侧请参考如下方案。 选择合适的内存 在请求并发量一定的情况下,函数内存越大,分配的CPU资源相应越多,一般冷启动表现越优。 快照冷启动 Java应用冷启动速度慢的问题尤为突出。华为云FunctionGraph创新提出的基于进程级快照的冷启动加速解决方案,
的消息。 CTS触发器相关字段说明 表15 CTSTriggerEvent字段说明 字段名 字段说明 CTS CTS消息体(表16) 表16 CTS结构相关字段说明 字段名 字段描述 Time 事件产生时间 User 触发该事件的用户信息(表17) Request 事件请求内容 Response
日志的具体内容配置相应的日志提取条件。 设置环境变量 在函数配置页签需配置环境变量,分别表示OBS桶地址、OBS桶名称以及OBS对象名称,说明如表1 环境变量说明表所示。 表1 环境变量说明表 环境变量 说明 obs_address OBS服务终端节点,获取地址请参考地区和终端节点。
函数构建类实践 使用已有SpringBoot项目构建HTTP函数 使用Next.js项目构建HTTP函数 使用Go语言程序构建HTTP函数 使用FunctionGraph函数对MFA微服务进行Serverless化改造 使用FunctionGraph函数访问Redis数据 Fun
18/rtsp/nodejs/bin/node:表示nodejs编译环境所在路径。 $RUNTIME_CODE_ROOT:系统变量,表示容器中项目代码存放路径/opt/function/code。 index.js:项目入口文件,可自定义名称。 目前支持的Nodejs语言和对应的路径请参见表1。 表1 Nodejs语言对应路径
p::Example.Hello::Handler。 SDK接口 Context接口 Context类中提供了许多属性供用户使用,如表1所示。 表1 Context对象说明 属性名 属性说明 String RequestId 请求ID。 String ProjectId Project
operations and the Users database posts/ serverless.yml # Contains 4 functions that do Posts CRUD operations and the Posts database comments/ serverless
函数工作流实际费用是由请求次数费用、执行时间费用、函数流节点执行次数、GPU计量时间、磁盘计量时间、闲置内存计量时间和其他费用构成,各计费项按需计费说明请参见表1。 表1 计费项说明 计费项 说明 请求次数费用 在您使用函数的过程中会产生请求次数费用,请求次数是所有函数的请求总数。 执行时间费用(非预留实例)
通过JSONPath表达式对节点的输出信息进行过滤。 表2 连线参数配置 参数 说明 分支类型 下拉列表可选择“条件分支”和“默认分支”。 表达式 当“分支类型”选择“条件分支”时,需要配置该项。该参数通过表达式确定当前分支是否满足执行条件。例如,$.input<2,表示当如输入值小于2
当选择该条件时,需要配置“指定分支执行完成数目”参数。(最大分支数目20,指定分支数目不能大于总分支数。) 输入过滤表达式 通过JSONPath表达式对节点的输入信息进行过滤。 输出过滤表达式 通过JSONPath表达式对节点的输出信息进行过滤。 结果输出路径 输入并行分支执行结果输出位置,输入值作为ke
DefaultValue:设置默认值,参数未获取到值时,默认获取默认值。 操作:编辑或删除设置的参数。 输入过滤表达式 通过JSONPath表达式对节点的输入信息进行过滤。 输出过滤表达式 通过JSONPath表达式对节点的输出信息进行过滤。 开启容灾函数 开启后,当前节点名称不能与其他函数节点名称重复。
使用函数流功能前,请先了解表达式说明和运算符说明。 配置说明 在函数编排页面,单击“子流程”节点,配置子流程参数。 图1 子流程参数配置 表1 子流程参数 参数 说明 选择子流程 下拉列表中会展示所有已创建的函数流。 是否等待子流程完成 默认开启。 输入过滤表达式 通过JSONPath表达式对节点的输入信息进行过滤。
out.println(event); System.out.println(event.getMessage().getRecords()[0].getRawData()); return "ok"; } public String ltsTest(LTSTriggerEvent
pplications/{id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目 ID,获取方式请参见获取项目ID。 id 是 String 应用ID。 最小长度:1 最大长度:64 请求参数 表2 请求Header参数 参数 是否必选
在SMN消息通知服务创建主题,此处以主题名称cts_test为例,创建过程请参考创建主题。 在SMN消息通知服务订阅主题,用于将告警消息推送至该主题下的订阅终端,此处以添加邮件订阅终端为例,订阅cts_test主题,订阅过程请参考订阅主题。 订阅主题可选择通过邮件、短信、HTTP/HTTPS等形式推送告警消息。