检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用Terraform创建函数 Terraforms是一款开源工具,用于安全有效地构建、更改和版本控制基础设施。用户通过这些配置文件声明他们想要的基础设施最终状态,而不需要具体指定如何实现这个状态。 Terraform的优势: 提升架构一致性:减少手动配置过程中的错误和配置漂移。
创建依赖包 操作步骤 本案例的依赖包如果使用Linux安装,会出现软连接导致的依赖缺失错误,因此需要删除现有“node_modules”子目录。 在Windows系统中重新安装,操作步骤如下: 退出Docker容器(原生Linux系统忽略)。 exit 删除项目目录中的“node_modules
启用禁用函数 FunctionGraph支持对函数进行禁用和启用操作,已禁用的函数不能被调用执行。 约束与限制 只能禁用“latest”版本的函数,不能禁用已经发布的函数版本。 基于已禁用的“latest”版本重新发布新版本,发布后的新版本也处于禁用状态且不能启用。 当函数处于禁用状态时可以修改代码
导入导出函数 FunctionGraph支持导入导出函数,可以把函数以文件的形式导出到本地,并在其他区域或其他用户的函数工作流控制台导入,实现函数配置数据的迁移。 约束与限制 导出函数: 导出函数资源包大小不超过50MB。 导出的函数资源中配置信息不包含别名信息。 通过函数列表界面导出函数时
配置函数的别名 FunctionGraph支持为函数创建别名,并关联指定版本的函数。客户端通过别名调用函数时,即可调用到指定版本的函数。在实际业务场景下,可以通过修改在别名上配置的版本,实现函数版本的更新和回滚,客户端无感知。 一个别名支持配置最多两个函数版本,并为两个版本分配不同的权重
配置函数的标签 标签用于标识资源,为函数添加标签,可以方便用户识别和管理拥有的函数。 您可以在函数创建完成后,在函数的详情页中为函数添加标签,一个函数最多可以添加20个标签。 如您的组织已经设定函数工作流服务的相关标签策略,则需按照标签策略规则为函数添加标签。标签如果不符合标签策略的规则
配置函数的版本 函数在开发、测试、生产过程中,可以发布一个或多个版本,实现对函数代码的管理。版本相当于函数的快照,可对应代码里的Tag,每个函数版本都会有对应的函数代码、配置等。 函数版本发布后,您可以根据实际需要修改版本配置信息,但版本的代码无法更新,以保证版本的稳定性和可追溯性
配置函数的常规信息 函数的常规配置信息如函数执行入口、执行超时时间、内存等,会在创建函数时根据所选择的运行时语言默认填写,用户可根据实际业务需要修改常规信息的配置。 配置常规信息 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击函数的名称,进入函数详情页。 在
配置函数的并发处理 默认情况下,每个函数实例同一时刻只处理一个请求。函数收到并发请求时,例如并发三个请求,FunctionGraph会启动三个函数实例处理请求。FunctionGraph提供了单实例多并发能力,可以在一个实例上并发处理多个请求。 单实例多并发适合函数处理逻辑中有较长时间等待下游服务响应的场景
配置函数的心跳检测 心跳函数用于检测用户函数运行时的异常场景,如函数死锁、函数内存溢出、函数网络异常等。 配置了心跳函数后,当函数运行时,FunctionGraph每隔5秒向函数实例发送一次心跳请求,触发心跳函数。如果心跳请求返回异常,FunctionGraph会认为函数实例异常,
基于RAM共享函数资源 基于资源访问管理RAM服务,FunctionGraph可以实现跨账号共享函数资源,资源所有者将资源同时共享给其他多个账号使用,资源使用者接受共享邀请后就可以访问和使用共享的函数资源。 资源所有者可以依据最小权限原则和不同的使用诉求,选择不同的共享权限,资源使用者只能对资源进行权限内的访问
配置函数初始化 函数初始化是指调用函数时对其进行初始化设置的过程,包括设置函数的初始状态、分配资源或为函数内部的变量赋予初始值等。 FunctionGraph是在函数实例启动成功后执行函数的初始化,初始化执行成功后,函数实例才能开始处理函数的调用请求。 FunctionGraph保证一个函数实例在生命周期内只成功执行一次函数初始化
为函数配置预留实例 FunctionGraph提供了按量和预留两种类型的实例。 按量实例是由FunctionGraph根据用户使用函数的实际情况来创建和释放,当FunctionGraph收到函数的调用请求时,自动为此请求分配执行环境。 预留实例是将函数实例的创建和释放交由用户管理,
配置函数的环境变量 FunctionGraph支持为函数设置环境变量,可以在不修改代码的情况下,将动态参数传递到函数,调整函数的执行行为。 环境变量在函数中适用于以下场景: 区分多环境:相同的函数逻辑,可根据部署环境的不同,配置不同的环境变量以区分。例如,通过环境变量给测试和开发环境配置不同的数据库
配置函数的动态内存 默认情况下,一个函数唯一绑定了一个资源规格。开启动态内存可以让函数在处理指定请求时,设置本次处理中函数实例使用的资源规格。如果不指定资源规格,函数将使用默认配置的资源规格。 以使用函数做视频转码为例,视频文件大小从MB到GB,不同编码格式和分辨率对转码需要的计算资源要求差别很大
FunctionGraph中的代码是如何隔离的? 每个FunctionGraph函数都运行在其自己的环境中,有其自己的资源和文件系统。 父主题: 产品咨询
配置函数的异步调用策略 在异步调用函数的场景下,FunctionGraph会将请求排队,不等待函数的执行结果,直接向客户端返回响应,这种情况下客户端无法实时感知函数的执行结果。如果需要设置异步请求失败重试或者获取异步请求的结果通知,可以通过设置异步配置实现。 失败重试:用户代码异常造成的失败
能否在函数代码中使用线程和进程? 用户可使用编程语言和操作系统的功能,在函数中创建额外的线程和进程。 父主题: 配置函数
为函数配置预留实例(旧) 函数工作流提供了按量和预留两种类型的实例。 按量实例是由函数工作流根据用户使用函数的实际情况来创建和释放,当函数工作流收到函数的调用请求时,自动为此请求分配执行环境。 预留实例是将函数实例的创建和释放交由用户管理,当您为某一函数创建了预留实例,函数工作流收到此函数的调用请求时
配置函数的快照式冷启动 FunctionGraph支持基于进程级快照的冷启动加速方案,用户无需额外付费,只需进行简单的配置、少量的代码修改,即可享受到该方案带来的冷启动性能提升。 当用户的Java函数启用快照式冷启动后,FunctionGraph会预先执行函数对应的初始化代码,获取其初始化执行上下文环境的快照