检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
准备 日志采集和存储 在云日志服务创建日志组,此处以polo.guoying为例,创建过程请参考创建日志组。 在云日志服务创建日志流,此处以lts-topic-gfz3为例,创建过程请参考创建日志流。 在云日志服务配置Agent,快速将ECS等服务器上日志采集到指定的日志组,配置过程请参考安装ICAgent。
案例概述 场景介绍 MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
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 相关链接
附录:CodeArts IDE Online使用方法 用户在编辑函数代码时支持类似工程方式的管理,可以创建文件、文件夹并对其进行编辑。使用函数工作流控制台中的在线代码编辑器,可以在线编写函数代码,如果代码是上传zip包的方式,则前端进行相应解压展示,并支持在线编辑修改。同时,在线
为什么首次调用函数时速度会比较慢? 因为函数是冷启动的,所以如果有初始化或者函数中有第一次执行比较耗时的操作(例如加载函数代码及依赖包),第一次请求会比较慢,后面接着的请求就会很快,因为此时容器还没有销毁。如果间隔一分钟没有请求,容器就会销毁。 如果您使用的是C#或者Go语言,因
Go SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Go SDK信息说明 SDK信息 说明 安装 go get -u github.com/huaweicloud/huaweicloud-sdk-go-v3
预留实例管理。 按需计费 具体函数计算资源消耗公式请参见空闲模式资源消耗公式。 其他费用 在您使用函数工作流服务过程中,如果搭配使用了其它华为云服务,如OBS、SMN等,则您需要为该服务支付额外的费用。 按所使用服务计费模式计费 其他各云服务计费方式有差异,具体计费详情请参考价格详情。
开发HTTP函数 本章节通过HTTP函数部署koa框架,更多HTTP详情,请参见创建HTTP函数。 约束与限制 HTTP函数只能绑定APIG/APIC触发器,根据函数和APIG/APIC之间的转发协议,函数的返回合法的http响应报文中必须包含body(String)、statu
根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求
函数配置概述 成功创建函数后,需在函数详情页中,配置函数运行所必须的资源与环境,确保函数满足业务需求。 函数配置流程 图1介绍如何使用FunctionGraph函数以实现业务需求。 图1 FunctionGraph使用流程 涉及的配置项说明如下: 编写代码 用户编写业务代码,目前支持Node
扩展函数的存储空间 FuncitonGraph提供了磁盘挂载功能,通过挂载文件系统可为函数带来如下优势: 相比于临时存储空间/tmp,可以极大的扩展函数的执行存储空间。 多个函数之间可以挂载同一个文件系统,共享访问已经配置好的文件系统。 利用ECS已有的存储能力,可实现计算资源的动态扩展。
创建函数 登录函数工作流控制台,在左侧导航栏选择“总览”,单击“创建函数”进入创建函数界面。 选择“创建空白函数”,在创建函数界面配置如下信息:函数类型选择“事件函数”、输入您自定义的函数名称,此处以“access-redis-demo”为例,选择运行时“Python3.9”,最后单击创建函数。
构建程序 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,右上角单击“创建函数”。 进入创建函数页面,选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。 函数类型:选择“HTTP函数”。 区域:选择“华东-上海一”。 函数名称:输入您自定义的函数
基本概念 函数 函数是处理事件的自定义代码。 事件源 事件源是发布事件的公有云服务或自定义应用程序。 同步调用 同步调用指的是客户端请求需要明确等到响应结果,也就是说这样的请求必须得调用到用户的函数,并且等到调用完成才返回。 异步调用 异步调用是指客户端不关注请求调用的结果,服务
构建程序 通过Web托管方式改造微服务。改造过程中,如果微服务是基于spring框架,则需要使用FunctionGraph提供的SDK,即在pom.xml文件中添加步骤1中依赖。此时,您只需修改配置以及打包方式即可将微服务改造成serverless函数。具体操作步骤如下: 配置微服务依赖。
约束与限制 支持区域 函数工作流服务支持区域详情请参见地区和终端节点。 函数配置 表1 函数配置约束与限制 限制项 说明 单个函数下最大允许创建的版本个数 20(含latest版本) 单个函数下最大允许创建的别名个数 10 每个版本仅可以创建1个别名。 单个函数版本下最大允许创建的触发器总数
Java函数开发指南(使用IDEA工具普通Java项目) 开发Java函数,以下给出Demo示例步骤: 创建函数工程 配置idea,创建java工程JavaTest,如图创建工程所示 图1 创建工程 添加工程依赖 根据Java SDK下载提供的SDK地址,下载JavaRuntime
C#函数开发 函数定义 建议使用.NET Core 3.1版本。 对于C#,FunctionGraph运行时目前支持C#(.NET Core 2.1)、C#(.NET Core 3.1)、C#(.NET Core 6.0,当前仅支持华北-乌兰察布二零二、华北-乌兰察布二零一、拉美-墨西哥城二)版本。
function字段介绍 function字段 表1 function字段说明 参数名 必填 类型 参数描述 functionName True String 函数名称 handler True String 函数执行入口,规则:xx.xx,必须包含“.” runtime True