正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Node.js语言 √表示支持,×表示不支持 语言版本 是否支持 开发指导 Node.js 6.10 √ 接口定义、有关SDK接口说明和函数开发指导请参见Node.js函数开发指南。 Node.js 8.10 √ Node.js 10.16 √ Node.js 12.13 √ Node.js
InitializerTimeout: 0 //函数初始化超时时间 EnterpriseProjectId: "0" //企业项目 FuncType: v2 URN: "" //函数URN,函数下载后生成 部署函数
自动化部署 部署环境准备 使用CodeArts托管函数代码 deploy.py代码示例 cam.yaml解析
(context); client.setObjectInfo(objectKey, inputPath, outputPath); // 下载obs桶里面的文件 client.downloadFile(); // 初始化
如果调用时error不为空,则函数将返回HandledInitializationError,由于屏蔽了初始化函数的返回值,所以data中的数据是无效的,可以参考上文的示例设置为空。 SDK接口 Context类中提供了许多上下文方法供用户使用,其声明和功能如表1所示。
MFA微服务serverless化 案例概述 准备 构建程序 添加事件源 测试函数
创建Next.js项目 本案例以Next.js框架的默认demo为例演示部署过程,需要在Linux环境中创建一个全新的Next.js项目,本案例采用本地运行Docker node:18.15.0镜像的方式,同样适用于其他Linux系统。关于Docker镜像和Linux操作系统的使用并非本案例主要内容
预留实例计费 函数提供预留实例功能,预留实例在创建成功后会执行函数的初始化,并且常驻在执行环境中,彻底消除冷启动对业务的影响。 预留实例根据代码的调用次数、实例存活时长计费。时长计量粒度为60秒。
old_config.get('app_xrole', None) if app_xrole_config is not None: update_cmd = update_cmd + f' --app_xrole="{app_xrole_config}"' # 配置初始化入口和初始化超时时间
准备 该场景涉及微服务与后端服务的调用,因此需要提前准备好对应的后端服务。用户可以使用自己搭建的后端服务,也可以使用华为云提供的云服务。 若后端服务需要通过虚拟私有云(VPC)访问,函数需要进行额外配置,若可以通过公网访问后端服务,可以跳过以下步骤2和步骤3。 创建Java函数(按照业务划分
案例概述 场景介绍 MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless
测试函数 测试托管方式改造函数,调用方法如图1所示。 图1 测试函数调用的方法 调用时,遵循原来的请求方法。 请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求
添加事件源 添加APIG触发器(每个函数分别创建触发器),通过HTTP请求调用函数。 填写API名称,选择分组、发布环境、认证、请求协议、超时时间等配置,单击”确定”完成触发器创建,如图1所示。 图1 创建触发器 创建后可以获得一个调用URL,通过这个URL进行函数的调用,如图2所示
非法的函数初始化入口 检查函数初始化入口 400 FSS.1405 Invalid initialization timeout. 非法的函数初始化超时时间 检查函数初始化超时时间 400 FSS.1406 Invalid heartbeat handler.
Node.js SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Node.js SDK信息说明 SDK信息 说明 安装 npm i @huaweicloud/huaweicloud-sdk-functiongraph
通过FunctionGraph部署Next.js项目 方案概述 创建Next.js项目 创建依赖包 构建程序 处理结果
2019-3-4 函数新增初始化功能。 函数工作流API2.0版上线。 2019-1-26 Sandbox AOS远程部署实现package、deploy命令合并。 函数内存配置新增了1792,2048,2560,3072,3584,4096 内存。
安装 Serverless是一个Node.js CLI工具,因此您需要先在计算机上安装Node.js。 请访问Node.js官方网站,下载并按照安装说明在本地计算机上安装Node.js。 您可以通过在终端中运行node --version来验证Node.js是否安装成功,即可以看到打印出来的对应
创建程序包 创建并初始化函数 函数管理 函数创建完成后,支持在线编辑函数,修改函数代码,修改函数配置等功能。 发布区域:所有部署函数工作流服务的区域均可使用。 函数管理 环境变量 支持设置函数的加密配置和环境变量,无需对代码进行任何更改,可以将设置动态参数传递到函数代码和库。
预留实例在创建完成后,会自动加载该函数的代码、依赖包以及执行初始化入口函数,且预留实例会常驻环境,消除冷启动对业务的影响。(注意:不要依赖预留实例本身的初始化函数去执行一次性业务。)