检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在左侧导航栏进入“访问密钥”界面,单击“新增访问密钥”生成新的密钥并下载保存。 配置密钥 引导式配置 可以通过执行config add直接进行密钥的添加: $ s config add ? Please select a provider: (Use arrow keys) Alibaba
Project Structure 选择上图中的“Artifacts”,单击“+”,进入添加“Artifacts”窗口,如图7所示。 图7 添加Artifacts 添加"Main Class",如图8所示。 图8 添加Main Class 单击"Build"->"Build Artifacts"来编译Jar包,如图9所示。
9ac57f3823.apig.projectID.huaweicloudapis.com/apig-demo/subpath 也可以通过添加请求参数调用: https://464d86ec641d45a683c5919ac57f3823.apig.projectID.huaweicloudapis
在FunctionGraph和API Gateway之上使用现有的Node.js应用程序框架运行无服务器应用程序和REST API 。提供的示例允许您使用Express框架轻松构建无服务器Web应用程序/服务和RESTful API 。 1.0.1 request 简化http调用,支持HTTPS并默认遵循重定向
ven项目) 开发Java函数,以下给出Demo示例步骤: 创建函数工程 配置idea,创建maven工程,如图1所示。 图1 创建工程 添加工程依赖。 根据Java SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压
操作步骤 设置FunctionGraph函数的加密配置和环境变量,无需对代码进行任何更改,可以将设置动态参数传递到函数代码和库。 图1 添加环境变量 例如Node.js语言加密配置和环境变量的值(value)可以通过Context类中的getUserData(string key)获取,详细请参见Node
Python SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Python SDK信息说明 SDK信息 说明 安装 pip install huaweicloudsdkfunctiongraph 相关链接
类型:选择“file”。 参数值:单击“Upload”,上传刚才创建好的app.log文件。 在upload-file-1函数详情页面的“监控”页签下,查看日志,可看到文件内容的打印。实际业务中,用户可根据需要修改代码保存数据到对象存储OBS、日志服务LTS等云服务或直接处理。 图3
共享变量 不涉及 单实例多并发处理时,修改共享变量会导致错误。这要求您在编写函数时,对于非线程安全的变量修改要进行互斥保护。 监控指标 按实际情况进行监控。 相同负载下,函数的实例数明显减少。 流控错误 不涉及 太多请求时,body中的errorcode为“FSS.0429” ,响应头中的status为429
构建程序 创建API分组 创建函数及添加事件源之前,需要先创建一个API分组,API分组是API的管理单元,用来存放API。 您需要拥有一个APIG实例后才能开启API网关服务相关功能,具体请参见购买实例。 登录APIG控制台,在左侧导航栏选择“API管理 > API分组”,单击“创建API分组”。
变量 Serverless Framework提供了一个强大的变量系统,您可以将动态数据添加到serverless.yml中。使用Serverless变量,您将能够执行以下操作: 引用并加载环境变量中的变量。 引用并加载CLI选项中的变量。 递归引用同一serverless.yml文件中的任何类型的属性。
说明 依赖包名称 自定义的依赖包名称,用于识别不同的依赖包。 代码上传方式 分为上传ZIP文件和从OBS上传文件。 上传ZIP文件:需单击“添加文件”,上传ZIP文件。 OBS链接URL:需填写“OBS链接URL”,OBS存储链接获取方法请参见OBS对象存储服务。 运行时语言 选择运行时语言。
分布式消息服务(RocketMQ)(当前处于公测阶段,仅支持华东-上海一。) 填写完成后单击“确定”。 若配置函数异步时,报“用户权限不足”,请添加“FunctionGraph Administrator”权限。具体操作方法请参见创建用户并授权使用FunctionGraph。 异步配置
Java SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Java SDK信息说明 SDK信息 说明 安装 <dependency> <groupId>com.huaweicloud.sdk</groupId>
Node.js SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Node.js SDK信息说明 SDK信息 说明 安装 npm i @huaweicloud/huaweicloud-sdk-functiongraph
Go SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Go SDK信息说明 SDK信息 说明 安装 go get -u github.com/huaweicloud/huaweicloud-sdk-go-v3
准备 创建函数及添加事件源之前,需要创建两个OBS桶,分别用来保存用户上传的文件和加/解密后输出的文件。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源,本指导以加密文件为例: 创建OBS桶 上传文件的
图解函数工作流服务
在FunctionGraph和API Gateway之上使用现有的Node.js应用程序框架运行无服务器应用程序和REST API 。提供的示例允许您使用Express框架轻松构建无服务器Web应用程序/服务和RESTful API 。 1.0.1 request 简化http调用,支持HTTPS并默认遵循重定向
资产识别与管理 在函数的环境变量中,若有敏感信息例如账号和密码、Ak/Sk等,建议通过配置加密环境变量。不配置加密环境变量,则会在界面或API返回结果中明文展示。 在使用触发器、配置VPC访问、使用自定义镜像、挂载SFS等场景下,FunctionGraph需要与其他云服务协同工作