检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
API概览 FunctionGraph API为开发者、合作伙伴提供开发、部署、托管、运维的开放接口,帮助用户快速、低成本地实现业务创新,缩短应用上线周期。 FunctionGraph API提供的接口有如下几种类型。 表1 接口简介 类型 说明 函数调用 包括同步执行函数、异步执行函数
配置函数流的服务控制器组件 服务控制器组件可以将多个函数操作合并成一个原子节点进行管理。 函数流的服务控制器组件支持两种执行模式:串行模式和并行模式。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。
配置函数流的函数服务组件 函数流支持配置函数服务组件,通过该组件可以关联已创建的函数,进而实现业务需求。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。
图1 创建触发器 设置以下信息: 触发器类型:选择“对象存储服务 OBS”。 触发器名称:填写自定义的名称。 事件类型:选择需要的事件类型。 单击“确定”,完成EG触发器的创建。
apig.projectID.huaweicloudapis.com/apig-demo/subpath?
", "isBase64Encoded": true } 约束与限制: 通过APIG服务调用函数服务时,isBase64Encoded的值默认为true,表示APIG传递给FunctionGraph的请求体body已经进行Base64编码,需要先对body内容Base64解码后再处理
使用FunctionGraph是否需要开通计算、存储、网络等服务?
使用APIG触发器调用一个返回String的FunctionGraph函数时,报500错误 FunctionGraph函数对来自APIG调用的返回结果进行了封装,APIG触发器要求函数的返回结果中必须包含body(String)、statusCode(int)、headers(Map
已配置函数的分布式消息服务DMS委托权限,委托的创建请参见配置函数的委托权限。 请参见配置网络开启函数访问VPC内资源的网络配置。 分布式消息服务Kafka: 已创建Kafka实例,创建操作请参见购买Kafka专享版实例。
图2 请求路径 父主题: 使用FunctionGraph函数对MFA微服务进行Serverless化改造
编写体验舒适化 HTTP 函数的编写体验更贴近编写原生 Web 服务,可以使用 Node.js 原生接口,保证和本地开发服务体验一致。 限制 HTTP函数只允许创建APIG共享版、APIG专享版、APIC的触发器类型,其他触发器不支持。
表1 资源规划 资源 数量(个) API分组 1 自定义认证函数 1 业务函数 1 API 1 父主题: 使用FunctionGraph函数作为后端实现APIG的自定义认证能力
请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求Path即可),如图2所示。 图2 requestPath配置 测试独立函数。 统一使用POST请求。
但是FunctionGraph实现了与云日志服务(LTS)的对接,支持在LTS服务中配置告警,LTS支持日志告警实时监控函数日志中出现的异常信息。 父主题: 使用FunctionGraph函数访问Redis数据
sync:同步执行 async:异步执行 枚举值: sync async timeout Integer API网关请求函数服务的超时时间(毫秒)。APIG触发器此参数必填。 最小值:1 最大值:60000 version String 函数版本信息。
sync:同步执行 async:异步执行 枚举值: sync async timeout Integer API网关请求函数服务的超时时间(毫秒)。APIG触发器此参数必填。 最小值:1 最大值:60000 version String 函数版本信息。
关于分布式消息服务RabbitMQ触发器的事件源介绍,请参见支持的事件源。
图2 创建触发器 触发器类型可以选择“API 网关服务(APIG)”或“API 网关服务(APIG 专享版本)”,此处以共享版APIG为例,即选择“API 网关服务(APIG)”,配置信息如下: API名称:默认即可,无需修改。
应用示例 示例1:创建函数和Timer触发器实现定时从OBS桶中下载文件 示例2:创建函数和APIG触发器获取静态页面 示例3:上传代码到OBS桶,并使用OBS链接创建函数 示例4:函数互调
java模板 package com.huawei.demo; import com.huawei.services.runtime.Context; import com.huawei.services.runtime.entity.apig.APIGTriggerEvent;