检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用指南 欢迎使用华为云函数工作流Serverless使用指南。 您在继续操作之前,使用CLI需要先提供华为云用户凭证。 简介 快速入门 安装 凭证 服务 函数 事件 部署 打包 变量 父主题: Serverless Framework
简介 Serverless Framework帮助您使用华为云函数工作流开发和部署无服务器应用。它是一个CLI,提供开箱即用的结构、自动化功能和最佳实践,您可以专注于构建复杂的、事件驱动的、无服务器架构,由函数和事件组成。 Serverless Framework与其他应用程序框架不同
凭证 Serverless Framework需要访问您的华为云账号的凭证,代表您创建和管理资源。 创建华为云账号 打开华为云官网,选择“注册”,详情请参考注册华为账号并开通华为云。 获取凭证 您需要创建凭证,以便Serverless可以使用它们在项目中创建资源。 进入“访问密钥”
服务 service就像一个项目,您可以在服务中定义华为云函数工作流的函数和触发它们的events,所有这些都在一个名为serverless.yml的文件中。 若您要构建第一个Serverless Framework项目,请先创建一个service。 组织 在最初使用应用时,建议您可以使用单个服务来定义该项目的所有函数和事件
事件 简单地说,事件主要用于触发函数运行。 如果您选择华为云作为提供商,则服务中的events仅限于华为云API网关(APIG)和OBS,具体详情请参见事件列表。 部署后,Framework将设置您的function应该侦听的相应事件配置。 配置 事件属于每个函数,可以在serverless.yml
变量 Serverless Framework提供了一个强大的变量系统,您可以将动态数据添加到serverless.yml中。使用Serverless变量,您将能够执行以下操作: 引用并加载环境变量中的变量。 引用并加载CLI选项中的变量。 递归引用同一serverless.yml
安装 在当前工作目录中从GitHub URL安装服务,如下: serverless install --url https://github.com/some/service 选项 --url或-u:GitHub的服务URL,必填。 --name或-n:服务名称。 示例 从GitHub
打包 默认情况下,sls package命令将所有基础设施资源打包到.serverless目录中用于部署。 示例 serverless package 在该示例中,您的服务会被打包。生成的软件包将默认位于服务的.serverless目录。 父主题: CLI参考
部署 serverless deploy命令通过华为云API部署整个服务。当您编辑serverless.yml文件更改了服务时,请运行此命令。 serverless deploy 产物 执行serverless deploy命令后,所有创建的部署产物都将放置在服务的.serverless
信息 serverless info命令显示有关已部署服务的信息,在您的服务目录中运行此命令。 serverless info 父主题: CLI参考
调用 调用已部署的函数。您可以发送事件数据、读取日志和查看函数调用的其他重要信息。 serverless invoke --function functionName 选项 --function或-f:要调用的服务中函数的名称,必填。 --data或-d:传递给函数的数据。 --path
实时推理场景 特征 在实时推理应用场景中,工作负载具有以下一个或多个特征: 低延迟 单次请求的处理时效性要求高,RT(Response Time)延迟要求严格,90%的长尾延时普遍在百毫秒级别。 功能优势 函数计算为实时推理工作负载提供以下功能优势: 预留GPU实例 函数计算平台提供了默认的按量
安装 Serverless是一个Node.js CLI工具,因此您需要先在计算机上安装Node.js。 请访问Node.js官方网站,下载并按照安装说明在本地计算机上安装Node.js。 您可以通过在终端中运行node --version来验证Node.js是否安装成功,即可以看到打印出来的对应
事件列表 APIG网关事件 OBS事件 父主题: Serverless Framework
部署 Serverless Framework旨在安全、快速地为您创建华为云函数工作流的函数、事件和资源。 全量部署 如下是使用Serverless Framework执行部署的主要方法: serverless deploy 当您在serverless.yml中更新了函数、事件或资源配置
打包 打包CLI命令 使用Serverless CLI工具,可以将项目打包,而无需将其部署到华为云。这最好与CI/CD工作流一起使用,以确保可部署产物一致。 运行以下命令将在服务的.serverless目录中构建和保存所有部署产物: serverless package 打包配置
函数初始化入口Initializer 概述 Initializer是函数的初始化逻辑入口,不同于请求处理逻辑入口的handler,在有函数初始化的需求场景中,设置了Initializer后,FunctionGraph首先调用initializer完成函数的初始化,之后再调用handler
Yaml文件 字段解析 表1 参数说明 参数 必填 类型 参数描述 region True Enum 地域 function True Struct 函数 triggers False Struct 触发器 Yaml完整配置 华为云函数工作流(FunctionGraph)组件的Yaml
准实时推理场景 本章节介绍什么是准实时推理场景,以及如何使用GPU按量实例和如何基于GPU按量实例构建使用成本较低的准实时推理服务。 特征 在准实时推理应用场景中,工作负载具有以下一个或多个特征: 调用稀疏 日均调用几次到几万次,日均GPU实际使用时长远低于6~10小时,GPU存在大量闲置
离线异步任务场景 特征 在离线异步应用场景中,工作负载具有以下一个或多个特征: 执行时间长 业务的处理耗时一般在分钟~小时级,Response Time不敏感。 提交后立即返回 在触发调用后立即得到返回,从而不因长耗时处理阻塞业务主逻辑的执行。 实时感知任务状态 无 并行处理 离线