检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
如何获取函数运行过程中的内存使用量信息? 函数调用的返回信息中会包含最大内存消耗等信息,请参考开发指南中的SDK接口。也可以在执行结果界面查看。 父主题: 调用函数
为什么函数实际使用内存大于预估内存,甚至触发内存溢出OOM? 函数调用过程中,运行时会解析和缓存传入的event事件, 这部分操作会消耗额外的内存。 函数调用结束后,回收的内存首先会放入内部内存池中,并不一定归还给操作系统,导致内存偏高,在高并发场景下这种现象会更加明显。 父主题:
若配置了动态内存,未设置内存值,调用同步执行函数或异步执行函数API时使用配置常规信息中设置的内存大小。 若配置了动态内存,内存值设置错误,未包含在指定值的范围内,调用API时,返回错误码“FSS.0406”。 配置动态内存 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
函数执行失败返回“runtime memory limit exceeded”时,如何查看内存占用大小? 请在函数请求返回界面查看。 图1 查看oom内存大小 父主题: 调用函数
自身代码执行逻辑超时,建议优化代码或增加超时时间。 网络请求超时,建议增加超时时间。 函数进行冷启动时,Java加载类时间过长,建议增加超时时间或增加内存。 父主题: 调用函数
就会销毁。 如果您使用的是C#或者Go语言,因为机制原因,启动速度会比其他语言慢。此时,您可以通过以下设置,增加运行速度。 适当增加函数的内存。 精简函数代码,例如:删除不必要的依赖包。 使用C#语言时,除了以上两种方法,在非并发场景下,您还可以通过以下方法增加运行速度。 创建一
置的超时时间超过90秒,且函数实际运行时间也超过90秒,前端页面会提醒超时,但是后端仍在运行,可以在日志中查看返回结果。 内存(MB) 函数执行可使用的内存大小,取值范围:128、256、512、768、1024、1280、1536、1792、2048、2560、3072、3584、4096、8192、10240。
或者预配置计算、存储、网络等服务,由FunctionGraph提供和管理底层计算资源,包括服务器CPU、内存、网络和其他配置/资源维护、代码部署、弹性伸缩、负载均衡、安全升级、资源运行情况监控等,用户只需要按照FunctionGraph支持的编程语言提供程序包,上传即可运行。 父主题:
如图2所示,找到config.json文件,选中并复制到任意目录,此处仍置于sd目录下,重命名为config_user1.json。如图3所示,同样为用户user2复制一份,命名为config_user2.json。 图2 复制config.json文件 图3 复制生成config_user1.json和config_user2
FunctionGraph的函数执行包含了哪些过程? FunctionGraph函数的执行过程包含两步: 选择一个相应内存的空闲实例。 执行用户的指定运行代码。 父主题: 调用函数
public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great
配置函数的心跳检测 心跳函数用于检测用户函数运行时的异常场景,如函数死锁、函数内存溢出、函数网络异常等。 配置了心跳函数后,当函数运行时,FunctionGraph每隔5秒向函数实例发送一次心跳请求,触发心跳函数。如果心跳请求返回异常,FunctionGraph会认为函数实例异常,将终止此函数实例。
调用链"页面,查看函数调用链信息。当前仅支持Java8和Java11函数。 前提条件 调用链只支持512MB内存以上的函数,若函数内存低于512MB,无法使用调用链功能,请在“设置 > 常规信息”中,扩大函数“内存”后再使用调用链功能。 已开通应用性能管理APM服务的使用权限,具体请参见APM权限管理。若未开通,则无法获取调用链相关数据。
何处理? 如何获取函数运行过程中的内存使用量信息? 为什么首次调用函数时速度会比较慢? 为什么函数实际使用内存大于预估内存,甚至触发内存溢出OOM? 函数执行失败返回“runtime memory limit exceeded”时,如何查看内存占用大小? 自定义镜像函数执行失败报“CrashLoopBackOff”
函数工作流使用场景广泛,例如实时文件处理、实时数据流处理、Web移动应用后端和人工智能等场景。 适用计费项 函数工作流实际费用是由请求次数费用、执行时间费用、函数流节点执行次数、GPU计量时间、磁盘计量时间、闲置内存计量时间和其他费用构成,各计费项按需计费说明请参见表1。 表1 计费项说明
支持 enable_dynamic_memory 否 Boolean 是否启动动态内存配置 enable_auth_in_header 否 Boolean 是否允许在请求头中添加鉴权信息 domain_names 否 String 内网域名配置。 restore_hook_handler
按需收费,只有对函数处理文件数据的时间进行计费,无需购买冗余的资源用于非峰值处理。 场景三:AI类应用 各行各业智能化深入带来更多的应用开发场景,通常需要集成各类服务快速上线。比如三方服务集成、AI推理、车牌识别。 其优势有: 快速搭建,用户上传图像后触发函数工作流执行调用文字识别/内
请求次数:每月100万次的免费请求。 计量时间:每月400,000GB-秒的免费执行时间。如果函数内存规格为1GB时,免费额度为400,000秒,如果函数内存规格为512MB时,免费额度为800,000秒,其它内存规格以此类推。 免费额度不会按月累积,在每个自然月开始时,上月未使用的免费额度清零,重新计算。
设置API的后端超时时间,单位为毫秒,设置范围为1~60000毫秒。 60000 APIG触发器创建成功后,如图1所示复制调用URL以备用。 图1 复制触发器调用URL 步骤三:配置客户端开始AI对话 可选择以下任一第三方客户端部署模型,推荐使用方式一的ChatBox客户端部署。 方式一:Chat
留实例)。 当前cam.yaml不支持VPC、委托、磁盘挂载和动态内存配置的更新,如果函数需要使用VPC、委托或者磁盘挂载和动态内存请在函数界面手动配置,在使用函数更新流水线时会保留VPC、委托、磁盘挂载和动态内存配置,不会覆盖掉。 为了避免在cam.yaml中明文显示函数的加密