检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用FunctionGraph函数对MFA微服务进行Serverless化改造 案例概述 准备 构建程序 添加事件源 测试函数 父主题: 函数构建类实践
开发事件函数 函数定义 建议使用Node.js 12.13版本。 Node.js 6.10函数定义 Node.js6.10 函数的接口定义如下所示。 export.handler = function(event, context, callback) 入口函数名(handler):入口函数名称,
Python语言方案 前提条件 已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 操作步骤 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,单击“创建函数”。 选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。
API 函数调用 函数配额 函数依赖包 函数测试事件 函数调用链 函数生命周期管理 函数版本别名 函数指标 函数日志 函数模板 函数预留实例 函数导入导出 函数触发器 函数流 函数异步配置 函数应用中心
构建程序 创建API分组 创建函数及添加事件源之前,需要先创建一个API分组,API分组是API的管理单元,用来存放API。 您需要拥有一个APIG实例后才能开启API网关服务相关功能,具体请参见购买实例。 登录APIG控制台,在左侧导航栏选择“API管理 > API分组”,单击“创建API分组”。
Java函数开发指南(使用IDEA工具普通Java项目) 开发Java函数,以下给出Demo示例步骤: 创建函数工程 配置idea,创建java工程JavaTest,如图创建工程所示 图1 创建工程 添加工程依赖 根据Java SDK下载提供的SDK地址,下载JavaRuntime
NodeJS语言方案 前提条件 已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 操作步骤 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,单击“创建函数”。 选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。
案例概述 本手册基于函数工作流服务实践所编写,用于指导您使用函数工作流服务实现处理DIS数据的功能。 场景介绍 使用数据接入服务(DIS)采集IOT实时数据流,需要将采集到的数据进行处理(比如格式转换),然后存储到表格存储服务(CloudTable Service)中,使用Fun
Java函数开发指南(使用IDEA工具maven项目) 开发Java函数,以下给出Demo示例步骤: 创建函数工程 配置idea,创建maven工程,如图1所示。 图1 创建工程 添加工程依赖。 根据Java SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。
案例概述 场景介绍 FunctionGraph支持在函数内访问客户的Redis数据库。本文介绍如何使用FunctionGraph和Redis客户端的能力,实现一个高可定制、高可靠、高可观测的最佳实践。 实现流程 表1 使用FunctionGraph函数访问Redis数据实现流程 序号
创建应用程序 功能介绍 创建应用程序(该功能目前仅支持华东-上海一、华北-北京四) 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/fgs/applications 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String
案例概述 场景介绍 MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
Java函数开发指南(使用Eclipse工具) 函数定义 函数有明确的接口定义,如下: 作用域 返回参数 函数名(函数参数,Context参数) 作用域:提供给FunctionGraph调用的用户函数必须定义为public。 返回参数:用户定义,FunctionGraph负责转换为字符串,作为HTTP
构建程序 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,右上角单击“创建函数”。 进入创建函数页面,选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。 函数类型:选择“HTTP函数”。 区域:选择“华东-上海一”。 函数名称:输入您自定义的函数
开发事件函数 函数定义 函数有明确的接口定义,如下所示: func Handler (payload []byte, ctx context.RuntimeContext) 入口函数名(Handler):入口函数名称。 执行事件体(payload): 函数执行界面由用户输入的执行事件参数,
Node.js SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Node.js SDK信息说明 SDK信息 说明 安装 npm i @huaweicloud/huaweicloud-sdk-functiongraph
Python SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Python SDK信息说明 SDK信息 说明 安装 pip install huaweicloudsdkfunctiongraph 相关链接
函数发起HTTP请求的源地址如何获取? 公网访问 函数未开启“函数访问VPC内资源”功能时访问公网。 访问公网时使用函数工作流服务的SNAT地址,该地址是固定的,如何获取请咨询技术支持工程师。 图1 未开启函数访问VPC内资源 函数开启“函数访问VPC内资源”功能时访问公网。(相关VPC配置详情请参见配置网络)
Go SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Go SDK信息说明 SDK信息 说明 安装 go get -u github.com/huaweicloud/huaweicloud-sdk-go-v3
OBS方式上传函数代码 本章节指导您使用函数工作流控制台,上传存储在OBS中的代码文件进行函数代码部署。 操作场景 当函数的代码包大小不超过300MB时,可以使用从OBS上传的方式部署代码包。 当前所有运行时均支持从OBS上传函数代码,请参考函数工程打包规范在本地打包代码文件并上