检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
所以各大平台支持都比较好,但是对于文件转码等存在超大数据流的场景,当前各大平台没有给出很好的解决方案。华为云FunctionGraph函数工作流针对该场景,提出了 Serverless Streaming 的流式处理方案,支持毫秒级响应文件处理。 技术原理 华为云FunctionGraph函数工作流提出
执行deploy.py脚本时读取函数配置文件cam.yaml,构造hcloud命令更新函数代码和函数配置,cam.yaml详细配置请参见cam.yaml解析。执行deploy.py脚本日志会写入/home/function/deploy/function.log日志文件中。 再创建一个helloworld目录,函数目录完整结构如下:
配置公网NAT网关归属的企业项目。没有指定企业项目时,使用默认项目default。 default 进入华为云网络控制台的弹性公网IP列表为公网NAT网关配置弹性公网IP,配置参考表2,填写完成后单击“立即购买”。 表2 弹性公网IP参数配置 参数类别 参数 参数说明 取值样例 基础配置 计费模式 必选参数。 按
钥。可以下载得到AK/SK文件,文件名一般为:credentials.csv。如下图所示,文件包含了用户名称(User Name),AK(Access Key Id),SK(Secret Access Key)。 图1 credentials.csv文件内容 如果您没有登录密码,
③API和云产品事件源触发函数执行 通过RESTful API或者云产品事件源触发函数执行,生成函数实例,实现业务功能。 ④弹性执行 函数在执行过程中,会根据请求量弹性扩容,支持请求峰值的执行,此过程用户无需配置,由FunctionGraph完成,并发数限制请参考约束与限制。 ⑤查看日志
进入项目目录。 cd nextjs-app 官方默认Demo代码需要修改项目中layout.tsx(该文件在nextjs-app下的app目录)文件的代码,不然会导致无法下载字体文件的错误,参见图2并删除红框标出的内容。 图2 删除相关代码 构建项目。 npm run build 图3
本例函数工程文件保存在“~/Code/”文件夹下,在打包的时候务必进入Code文件夹下选中所有工程文件进行打包,这样做的目的:定义了FunctionGraph函数的index.js是程序执行入口,确保fss_examples_nodejs.zip解压后,index.js文件位于根目录。
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
由于HTTP函数本身不支持Go语言直接代码部署,因此本章节将以转换成二进制的方式为例,将Go编写的程序部署到FunctionGraph上。 操作流程 构建代码包 创建源文件main.go,代码如下: // main.go package main import ( "fmt" "net/http" "github
建议通过配置加密环境变量。不配置加密环境变量,则会在界面或API返回结果中明文展示。 在使用触发器、配置VPC访问、使用自定义镜像、挂载SFS等场景下,FunctionGraph需要与其他云服务协同工作,需要由您通过创建云服务委托,让FunctionGraph有权限代替您进行一些资源运维工作。具体请参见委托配置。
OBS桶:最大可上传300M压缩后的代码包。 前端页面展示代码大小 20MB 私有依赖包 直接上传ZIP文件:上传的文件大小限制为10M,如超过10M,请通过OBS上传。 从OBS上传文件:格式为OBS URL链接,文件必须为ZIP格式。 函数流 函数流当前仅支持华北-北京四、华东-上海一、华东-上海二、华南-广州、亚太-新加坡。
管理函数 配置函数初始化 配置函数的常规信息 扩展函数的存储空间 配置函数的环境变量 配置函数的异步调用策略 配置函数的并发处理 配置函数的版本 配置函数的别名 配置函数的动态内存 配置函数的心跳检测 配置函数的标签 配置函数的快照式冷启动 配置Java函数类隔离和预停止 导入导出函数
单击“创建依赖包”,弹出“创建依赖包”对话框。 输入您自定义的依赖包名称,此处以“redis-py-4.6.0”为例,代码上传方式为上传zip文件,单击“添加文件”添加redis-4.6.0.zip包,运行时语言选择“Python3.9”,最后单击确认。 父主题: 使用FunctionGraph函数访问Redis数据
其他参数保持默认即可。 函数创建完成后进入详情页面,选择“代码”页签,选择“上传自 > Zip文件”。 图1 上传zip文件 选择之前打包的“nextjs-func-code.zip”文件,然后单击“确定”。 添加依赖包 在Nextjs-app函数详情页面,选择“代码”页签,页面滚
求的计费时间为,从第一个请求开始处理计时,到最后一个并发的请求处理结束计一次时长费用。 FunctionGraph会根据实际的请求情况自动弹性伸缩函数实例,并发变高时,会分配更多的函数实例来处理请求,并发减少时,相应的实例也会变少。 函数实例数=函数并发数/该函数的单实例并发数。
age.json文件复制到windows系统的任意目录中,后续操作一致)。 图1 删除node_modules 在项目目录中执行依赖安装命令。 npm install --save 图2 依赖包执行安装 将新生成的“node_modules”子目录打包成zip文件,本案例命名为“nextjs-node-modules
华为云函数工作流(FunctionGraph)组件是一个用于支持华为云函数应用生命周期的工具,基于Serverless Devs进行开发,通过配置资源配置文件s.yaml,您可以简单快速地部署应用到华为云函数工作流平台。 前提条件 本地已安装nodejs。 快速开始 安装Serverless Devs
申请扩大FunctionGraph配额 概述 为防止资源滥用,平台限定了各服务资源的配额,对用户的资源数量和容量做了限制。如您最多可以创建多少台弹性云服务器、多少块云硬盘。 如果当前资源配额限制无法满足使用需要,您可以申请扩大配额。 查看配额 登录管理控制台。 在页面右上角,选择“资源
如需使用自定义模型进行AI对话,还需进行以下操作: 创建SFS Turbo文件系统 初始化自定义模型挂载文件系统 上传与使用自定义模型 进阶使用:使用ECS作为NFS服务器实现多用户资源隔离 如需实现多用户使用场景下的资源隔离,FunctionGraph函数支持挂载ECS服务器作为文件系统来源,通过设置共享NF
在线编辑函数代码:使用控制台代码编辑器在线编辑函数代码。 直接上传函数代码:直接上传本地开发完成的zip文件或jar文件,适用于代码包不超过40MB的场景使用。 从OBS上传函数代码:通过输入OBS桶地址,上传OBS桶中的zip文件或jar文件,适用于代码包不超过300MB的场景使用。 2 配置函数的依赖包 依赖