检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例概述 本手册基于函数工作流服务实践所编写,用于指导您使用函数工作流服务实现处理DIS数据的功能。 场景介绍 使用数据接入服务(DIS)采集IOT实时数据流,需要将采集到的数据进行处理(比如格式转换),然后存储到表格存储服务(CloudTable Service)中,使用Fun
”,如图11所示,添加步骤二:打包Java工程的JAR文件上传。 图11 上传JAR文件 上传成功后,请参见修改函数执行入口修改函数执行入口,单击“保存”。 回到“代码”页签,单击代码编辑区的“测试”,选择“创建新的测试事件”,在云事件模板列表中选择需要测试的事件模板,单击“创建”。 单击“测试”,查看函数执行结果。
dis数据前需进行的前期准备。 2 创建依赖包 创建一个redis-py的依赖包。 3 创建函数 创建实现Redis数据访问的函数并进行配置。请参考示例代码连接实例。 4 FunctionGraph监控告警 创建FunctionGraph监控告警完成对函数运行的实时监控。 5 日志告警(可选)
-Subject-Token的值)。 Content-Type 是 String 消息体的类型(格式) 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 应用名称 template_id 否 String 应用使用的模板ID description
使用FunctionGraph函数对MFA微服务进行Serverless化改造 案例概述 准备 构建程序 添加事件源 测试函数 父主题: 函数构建类实践
触发函数,通常为JSON格式的请求。用户作为事件源(事件的生产者),可以通过云服务平台或CodeArts IDE Online触发函数并进行执行。在函数创建界面可以选择函数类型,事件类型的函数不受触发器类型的限制,当前FunctionGraph支持的所有类型触发器均可用于触发事件函数。
直接上传函数代码:直接上传本地开发完成的ZIP文件或JAR文件,适用于代码文件不超过40MB的场景使用。 从OBS上传函数代码:通过输入OBS桶地址,上传OBS桶中的ZIP文件或JAR文件,适用于代码文件不超过300MB的场景使用。 2 配置函数的依赖包 依赖包为函数提供依赖库、运行时环境及函数扩展的执行能力,确保函数代码能满足业务需求。
API 函数调用 函数配额 函数依赖包 函数测试事件 函数调用链 函数生命周期管理 函数版本别名 函数指标 函数日志 函数模板 函数预留实例 函数导入导出 函数触发器 函数流 函数异步配置 函数应用中心
c/d”。 在“代码”页签下的“代码源”处,选择“配置测试事件”,在配置测试事件弹窗中选择“空白模板”,然后单击“创建”。 图4 配置测试事件 选择刚创建的测试事件,单击“测试”。 图5 测试结果 在“设置”页签下,选择“触发器”,复制APIG触发器的“调用URL”。 图6 复制URL
runtime,必须在编译之后打zip包,编译后的文件名称必须与函数执行入口的名称保持一致,例如:二进制文件名为handler,则“函数执行入口”命名为handler,Handler与步骤1中定义的函数保持一致。 测试函数 创建测试事件。 在函数详情页,单击“配置测试事件”,弹出“配置测试事件”页,输入测试信息如图1所示,单击“创建”。
ng框架的微服务需要剥离spring才能将微服务改造成serverless函数。 新建一个全新的maven工程,如图13所示。 图13 新建maven工程 业务代码迁移。 将原项目代码迁移至新项目,文件目录与原项目相同,删除使用的spring框架自动注入的标签。自动注入的类,需要用户自己创建对象。新创建的pom
如何通过扩展完成SkyWalking的对接 通过以下对接SkyWalking的示例帮助您理解如何通过扩展API将函数与监控、可观察性、安全性和监管等工具集成。 当用已编译的语言实现扩展时,在本地编译生成二进制文件;使用非编译的语言实现扩展时,需要把对接第三方平台需要的依赖一起打包上传,且需要函数的运行时兼容。
请确保函数与OBS桶所在区域一致。 支持上传ZIP格式和JAR格式(仅限Java运行时)的代码文件。 代码文件解压后的源代码大小不能超过1.5G,如需部署超大代码请提交工单处理。 当代码编辑器中部署的代码大于20M时将不展示代码,如图1所示,但仍可以正常测试函数代码。 图1 编辑器不展示代码 前提条件 已创建桶并将函数代码文件上传至OBS桶。
Node.js SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Node.js SDK信息说明 SDK信息 说明 安装 npm i @huaweicloud/huaweicloud-sdk-functiongraph
API名称:默认即可,无需修改。 分组:选择在APIG服务中创建的API分组,若无分组,可单击“创建分组”跳转至APIG创建,更多详情请参见创建API分组。 发布环境:选择“RELEASE”。 安全认证:此处为方便测试,选择“None”,实际业务请选择更安全的认证方式,例如IAM认证等。 请求协议:选择“HTTPS”。
性网卡”的私有IP地址。关于弹性网卡详情请参考弹性网卡。 图4 查看私有IP 配置白名单或安全组的入/出方向规则时,请确保配置的地址在用户VPC网段内,关于创建安全组详情请参考创建安全组。 请确保VPC函数完成执行“测试”,则会在“类型”列中显示“扩展弹性网卡”。 查询的两个私有
Python SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Python SDK信息说明 SDK信息 说明 安装 pip install huaweicloudsdkfunctiongraph 相关链接
Go SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Go SDK信息说明 SDK信息 说明 安装 go get -u github.com/huaweicloud/huaweicloud-sdk-go-v3
无疑将会使您网站的用户体验大打折扣,因此设法减少冷启动时间,提高终端用户的使用体验,是您在构建无服务器架构时亟待解决的问题。 Serverless实例的生命周期可以分为三个阶段: 初始化:在此阶段,FunctionGraph会尝试解冻之前的执行环境,若没有可解冻的环境,Funct
自定义运行 自定义函数执行的脚本和文件。 函数日志 函数调用过程中产生的日志信息。 函数监控 函数执行过程中的监控信息。 函数版本 函数从开发、测试、生产过程中发布一个或多个版本,实现对函数代码的管理。对于发布的每个版本的函数、环境变量会另存为相应版本的快照,函数代码发布后,可以根据实际需要修改版本配置信息。