- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
- 用户指南
-
最佳实践
- FunctionGraph最佳实践汇总
- FunctionGraph性能优化实践
- FunctionGraph冷启动优化实践
- FunctionGraph安全最佳实践
- 使用函数处理DIS数据
- 函数+LTS:日志实时分析实战
- 函数+CTS:登录/登出安全分析实战
- 定时开关华为公有云虚拟机
- 使用SpringBoot构建FunctionGraph HTTP函数
- 创建使用自定义认证且后端为FunctionGraph的API
- 函数+APIG:处理文件上传
- 使用函数处理IOT数据
- 函数+DEW:加解密文件
- 工作流+函数:自动化处理OBS中数据
- 函数+LTS:日志实时过滤
- 通过应用中心部署AI绘画Stable-Diffusion
- 使用Go构建FunctionGraph HTTP函数
- 使用FunctionGraph HTTP函数处理gRPC请求
- 使用FunctionGraph部署DeepSeek-R1蒸馏模型
- 开发指南
- API参考
- SDK参考
-
常见问题
-
通用问题
- FunctionGraph是什么
- 使用FunctionGraph是否需要开通计算、存储、网络等服务?
- 使用FunctionGraph开发程序之后是否需要部署?
- 如何获取Token?
- FunctionGraph函数支持哪些编程语言?
- FunctionGraph函数分配磁盘空间有多少?
- FunctionGraph函数是否支持版本控制?
- 函数中如何读写文件?
- 使用CLI工具,如何配置网络代理?
- FunctionGraph函数是否支持扩展?
- IAM子账号使用FunctionGraph需要设置哪些权限?
- 如何制作基于ODBC驱动的Python依赖包用于查询数据库?
- FunctionGraph配额
- FunctionGraph函数支持哪些中文字体?
- FunctionGraph如何实现域名解析?
- 如何通过域名访问专享版APIG中注册的接口?
- 函数工作流的常见使用场景?
- 函数调用绑定在APIG的域名的服务,报域名无法解析?
- 同步函数工作流能否支持到内网最大带宽的同步传输 ?
- 单租户的VPC超过默认配额时,需要怎么做?
- 如何打印info、error、warn级别的日志?
- 函数是否可以把API的接口域名配置成自己的域名?
- 函数工作流是否支持修改运行时语言?
- 已创建的函数是否支持修改函数名称?
- 挂载文件系统时,报“failed to mount exist system path”,应如何处理?
- 如何获取上传的文件?
- 同步调用响应未收到的可能原因?
- os.system("command &")执行日志未采集,应如何处理?
- 自定义运行时,都能操作哪些目录?
- 运行时语言支持的python3.6和3.9具体指哪个版本?
- 用户想使用vpc功能,但不想配置VPC Administrator委托,应配置哪些授权项?
- 函数执行超时的可能原因有哪些?
- 如何获取函数代码?
- 是否有initializer的代码示例?
- 如何开启结构化日志查询
- 函数服务是否支持在函数中启动TCP的监听端口,通过EIP接收外部发送过来的TCP请求?
- FunctionGraph是否支持域名解析?
- 函数发起HTTP请求的源地址如何获取?
- 创建函数
- 触发器管理
- 依赖包管理
-
函数执行
- FunctionGraph函数的执行需要多长时间?
- FunctionGraph函数的执行包含了哪些过程?
- FunctiongGraph函数的并发处理过程是什么?
- FunctiongGraph函数如何处理长时间不执行的实例?
- 首次访问函数慢,如何优化?
- 怎样获取在函数运行过程中实际使用了多少内存?
- 为什么第一次请求会比较慢?
- 调用API时,报错怎么办?
- 如何读取函数的请求头?
- API同步执行函数接口,是否支持内网调用?
- 函数内存超限返回“runtime memory limit exceeded”,如何查看内存占用大小?
- 如何定位自定义镜像执行失败“CrashLoopBackOff”的原因?
- 用户使用相同的镜像名更新镜像,预留实例无法自动更新,会一直使用老镜像,应如何处理?
- 函数配置
- 函数访问外部资源
- 其他问题
- V1迁移V2相关问题
-
通用问题
-
更多文档
-
用户指南(阿布扎比区域)
- 产品介绍
- 快速入门
- 使用前必读
- 构建函数
- 配置函数
- 在线调试
- 配置触发器
- 调用函数
- 监控
- 函数管理
- 依赖包管理
- 预留实例管理
- 扩大资源配额
- 审计
-
常见问题
-
通用问题
- FunctionGraph是什么
- 使用FunctionGraph是否需要开通计算、存储、网络等服务?
- 使用FunctionGraph开发程序之后是否需要部署?
- FunctionGraph函数支持哪些编程语言?
- FunctionGraph函数分配磁盘空间有多少?
- FunctionGraph函数是否支持版本控制?
- 函数中如何读写文件?
- FunctionGraph函数是否支持扩展?
- IAM子帐号使用FunctionGraph需要设置哪些权限?
- 如何制作基于ODBC驱动的Python依赖包用于查询数据库?
- FunctionGraph配额
- FunctionGraph函数如何解析DNS内网域名?
- 容器镜像函数如何解析DNS内网域名?
- 如何通过域名访问专享版APIG中注册的接口?
- 函数工作流的常见使用场景?
- 函数调用绑定在APIG的域名的服务,报域名无法解析?
- 同步函数工作流能否支持到内网最大带宽的同步传输 ?
- 单租户的VPC超过默认配额时,需要怎么做?
- 如何打印info、error、warn级别的日志?
- 函数是否可以把API的接口域名配置成自己的域名?
- 函数工作流是否支持修改运行时语言?
- 已创建的函数是否支持修改函数名称?
- 挂载文件系统时,报“failed to mount exist system path”,应如何处理?
- 如何获取上传的文件?
- 同步调用响应未收到的可能原因?
- os.system("command &")执行日志未采集,应如何处理?
- 自定义运行时,都能操作哪些目录?
- 运行时语言支持的python3.6和3.9具体指哪个版本?
- 用户想使用vpc功能,但不想配置VPC Administrator委托,应配置哪些授权项?
- 函数执行超时的可能原因有哪些?
- 如何获取函数代码?
- 是否有initializer的代码示例?
- 如何开启结构化日志查询
- 函数服务是否支持在函数中启动TCP的监听端口,通过EIP接收外部发送过来的TCP请求?
- 创建函数
- 触发器管理
- 依赖包管理
-
函数执行
- FunctionGraph函数的执行需要多长时间?
- FunctionGraph函数的执行包含了哪些过程?
- FunctiongGraph函数的并发处理过程是什么?
- FunctiongGraph函数如何处理长时间不执行的实例?
- 首次访问函数慢,如何优化?
- 怎样获取在函数运行过程中实际使用了多少内存?
- 为什么第一次请求会比较慢?
- 调用API时,报错怎么办?
- 如何读取函数的请求头?
- 为什么函数实际使用内存大于预估内存,甚至触发OOM?
- 函数内存超限返回“runtime memory limit exceeded”,如何查看内存占用大小?
- 如何定位自定义镜像执行失败“CrashLoopBackOff”的原因?
- 用户使用相同的镜像名更新镜像,预留实例无法自动更新,会一直使用老镜像,应如何处理?
- 函数配置
- 函数访问外部资源
- 其他问题
-
通用问题
- API参考(阿布扎比区域)
- 开发指南(阿布扎比区域)
-
用户指南(吉隆坡区域)
- 产品介绍
- 快速入门
- 使用前必读
- 构建函数
- 配置函数
- 在线调试
- 配置触发器
- 调用函数
- 监控
- 函数管理
- 依赖包管理
- 预留实例管理
- 审计
-
常见问题
-
通用问题
- FunctionGraph是什么
- 使用FunctionGraph是否需要开通计算、存储、网络等服务?
- 使用FunctionGraph开发程序之后是否需要部署?
- FunctionGraph函数支持哪些编程语言?
- FunctionGraph函数分配磁盘空间有多少?
- FunctionGraph函数是否支持版本控制?
- 函数中如何读写文件?
- FunctionGraph函数是否支持扩展?
- IAM子账号使用FunctionGraph需要设置哪些权限?
- 如何制作基于ODBC驱动的Python依赖包用于查询数据库?
- FunctionGraph配额
- 容器镜像函数如何解析DNS内网域名?
- 如何通过域名访问专享版APIG中注册的接口?
- 函数工作流的常见使用场景?
- 函数调用绑定在APIG的域名的服务,报域名无法解析?
- 同步函数工作流能否支持到内网最大带宽的同步传输 ?
- 单租户的VPC超过默认配额时,需要怎么做?
- 如何打印info、error、warn级别的日志?
- 函数是否可以把API的接口域名配置成自己的域名?
- 函数工作流是否支持修改运行时语言?
- 已创建的函数是否支持修改函数名称?
- 挂载文件系统时,报“failed to mount exist system path”,应如何处理?
- 如何获取上传的文件?
- 同步调用响应未收到的可能原因?
- os.system("command &")执行日志未采集,应如何处理?
- 自定义运行时,都能操作哪些目录?
- 运行时语言支持的python3.6和3.9具体指哪个版本?
- 用户想使用vpc功能,但不想配置VPC Administrator委托,应配置哪些授权项?
- 函数执行超时的可能原因有哪些?
- 如何获取函数代码?
- 是否有initializer的代码示例?
- 如何开启结构化日志查询
- 函数服务是否支持在函数中启动TCP的监听端口,通过EIP接收外部发送过来的TCP请求?
- 创建函数
- 触发器管理
- 依赖包管理
-
函数执行
- FunctionGraph函数的执行需要多长时间?
- FunctionGraph函数的执行包含了哪些过程?
- FunctiongGraph函数的并发处理过程是什么?
- FunctiongGraph函数如何处理长时间不执行的实例?
- 首次访问函数慢,如何优化?
- 怎样获取在函数运行过程中实际使用了多少内存?
- 为什么第一次请求会比较慢?
- 调用API时,报错怎么办?
- 如何读取函数的请求头?
- 为什么函数实际使用内存大于预估内存,甚至触发OOM?
- 函数内存超限返回“runtime memory limit exceeded”,如何查看内存占用大小?
- 如何定位自定义镜像执行失败“CrashLoopBackOff”的原因?
- 用户使用相同的镜像名更新镜像,预留实例无法自动更新,会一直使用老镜像,应如何处理?
- 函数配置
- 函数访问外部资源
- 其他问题
-
通用问题
- 修订记录
- API参考(吉隆坡区域)
- 开发指南(吉隆坡区域)
-
用户指南(阿布扎比区域)
- 通用参考
链接复制成功!
函数运行时
运行时
在函数工作流服务中创建函数时,需选定所需的运行时(Runtime),运行时为相应语言提供执行环境,以传递函数的调用事件、上下文信息和响应。用户可以使用函数工作流服务提供的运行时,或自行构建定制运行时。
函数支持的运行时语言
FunctionGraph函数Runtime支持多种运行时语言:Python 、Node.js、Java、Go、C#、PHP、Cangjie及自定义运行时,说明如表1所示。
运行时语言 |
支持版本 |
SDK下载 |
---|---|---|
Node.js |
6.10、8.10、10.16、12.13、14.18、16.17、18.15、20.15 |
- |
Python |
2.7、3.6、3.9、3.10、3.12 |
- |
Java |
8、11、17、21(仅支持“中东-利雅得”、“土耳其-伊斯坦布尔”区域) |
Java SDK下载(软件包检验文件:fss-java-sdk_sha256) |
Go |
1.x |
Go1.x SDK(软件包检验文件:Go SDK_sha256) |
C# |
.NET Core 2.1、.NET Core 3.1、.NET Core 6.0、.NET Core 8.0(仅支持“中东-利雅得”、“土耳其-伊斯坦布尔”区域) |
CsharpSDK(软件包检验文件:fssCsharp_sha256) |
PHP |
7.3、8.3 |
- |
Cangjie |
1.0 |
- |
定制运行时 |
- |
- |
运行时终止机制
为保障服务的安全性与可持续发展,随着运行时的版本迭代,FunctionGraph将停止对部分运行时的维护,不再继续提供技术支持和安全更新。
终止策略如表2所示,分为以下三个阶段。
阶段 |
说明 |
---|---|
终止支持阶段一:提前180天通知 |
华为云通过产品公告、Runtime废弃标记、邮件通知终止运行时的支持。 |
终止支持阶段二:运行时终止启动 |
华为云不再为该Runtime提供安全补丁或功能更新,不提供技术支持。禁止创建该Runtime类型的函数,已存在的该Runtime类型的FunctionGraph函数仍可更新代码或配置、运行函数。 |
终止支持阶段三:运行时终止启动后30天 |
华为云不再为该Runtime提供安全补丁或功能更新,不提供技术支持。禁止创建或更新使用该Runtime的FunctionGraph函数,可继续运行函数。建议将函数迁移至最新支持的运行时,以便获得技术支持和安全更新。 |
表3是FunctionGraph对运行时的终止支持计划,不在此表中的运行时,表示目前没有该运行时的终止计划。
Node.js Runtime集成的三方件
名称 |
功能 |
版本号 |
---|---|---|
q |
异步方法封装 |
1.5.1 |
co |
异步流程控制 |
4.6.0 |
lodash |
常用工具方法库 |
4.17.10 |
esdk-obs-nodejs |
OBS SDK |
2.1.5 |
express |
极简web开发框架 |
4.16.4 |
fgs-express |
在FunctionGraph和API Gateway之上使用现有的Node.js应用程序框架运行无服务器应用程序和REST API 。提供的示例允许您使用Express框架轻松构建无服务器Web应用程序/服务和RESTful API 。 |
1.0.1 |
request |
简化http调用,支持HTTPS并默认遵循重定向 |
2.88.0 |
Python Runtime集成的非标准库
模块 |
功能 |
版本号 |
---|---|---|
dateutil |
日期/时间处理 |
2.6.0 |
requests |
http库 |
2.7.0 |
httplib2 |
httpclient |
0.10.3 |
numpy |
数学计算 |
1.13.1 |
redis |
redis客户端 |
2.10.5 |
obsclient |
OBS客户端 |
- |
smnsdk |
访问SMN服务 |
1.0.1 |
函数样例工程包下载
本手册使用样例工程包下载地址如表6所示,可以下载到本地,创建函数时上传使用。