检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
函数是华为云函数工作流函数。它是一个独立的部署单元,就像微服务一样。它只是部署在云中的代码,主要是为了执行单个任务而编写,例如: 将用户保存到数据库。 处理数据库中的文件。 您可以在代码中执行多个任务,但不建议在没有充分理由的情况下这样做。分离关注点是最好的,Framework旨在帮助您轻松开发和部署函数,以及管理它们。
性定义在对象说明中。 HC.Serverless.Function.Common –部署在FunctionGraph服务中的项目工程需要引入该库,其中包含IFunctionContext对象,详情见context类说明。 创建csharp函数时,需要定义某个类中的方法作为函数执行
相同的代码,函数能通过VPC1连通Redis1,但是不能通过VPC2连通Redis2。 解决方案 与客户确认问题现象,Redis1在VPC1中,Redis2在VPC2中,Redis客户端代码是同一套代码。 查看连接报错信息如下,通过VPC2连接Redis2时,Redis IP地址变成乱码。 分
配置函数流的循环控制器组件 循环控制器组件可以用来对输入数组中每个元素进行循环处理,每次循环会执行一次循环内部的子流程或函数。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。 循环节点内部子流程需要满足如下规则: 只
默认情况下,sls package命令将所有基础设施资源打包到.serverless目录中用于部署。 示例 serverless package 在该示例中,您的服务会被打包。生成的软件包将默认位于服务的.serverless目录。 父主题: CLI参考
提供了单实例多并发能力,可以在一个实例上并发处理多个请求。 单实例多并发适合函数处理逻辑中有较长时间等待下游服务响应的场景,也适合函数逻辑中初始化时间较长的场景。单实例多并发具备以下优势: 降低冷启动概率,优化函数处理时延:例如并发三个请求,不配置单实例多并发,FunctionG
点 并行分支节点中的子流程节点中包含2个函数节点 以上标准函数流配置如图1所示。那么,在5月份期间,该函数流总共产生多少费用? 图1 标准函数流 计费构成分析(场景二) 标准函数流中累计节点执行次数总和:(循环节点1次+循环节点内函数2次+并行分支1次+并行分支中函数1次+并行分支中子流程1次+子流程中函数2次)*
命令解析 当执行命令deploy -h/deploy --help时,可以获取帮助文档。 在该命令中,包括了两个子命令: deploy function命令 deploy trigger命令 参数解析 表1 参数说明 参数全称 参数缩写 Yaml模式下必填 参数含义 type -
s服务的.zip文件。 在当前工作目录中创建名为my-huawei-service的新目录。 在此目录中解压文件。 如果根服务中存在serverless.yml,则将服务重命名为my-huawei-service。 从GitHub URL中的目录安装服务 serverless install
Deploy命令概览 Deploy命令 deploy 命令是对函数资源进行部署的命令,即将本地在 Yaml文件 中声明的资源部署到线上。 命令解析 参数解析 操作案例 注意事项 deploy function命令 参数解析 操作案例 deploy trigger命令 操作案例 父主题:
runtimeconfig.json文件的名称为程序集的名称。 文件内容中的version:项目属性中的目标框架的版本号,2.0则为2.0.0 ,2.1则为2.1.0。 当目标框架为.NET Core2.0时,要注意生成*.deps.json文件中是否已引入Newtonsoft.Json。如果没有引入,则需要自己手动引入,如下所示:
为什么函数实际使用内存大于预估内存,甚至触发内存溢出OOM? 函数调用过程中,运行时会解析和缓存传入的event事件, 这部分操作会消耗额外的内存。 函数调用结束后,回收的内存首先会放入内部内存池中,并不一定归还给操作系统,导致内存偏高,在高并发场景下这种现象会更加明显。 父主题:
Deserialize<T>(Stream ins):反序列化值传递到Function处理程序的对象中。 Stream Serialize<T>(T value):序列化值传递到返回的响应负载中。 本例以Visual Studio 2017新建一个.NET Core2.0的“test”工程,
onGraph函数时,报500错误 FunctionGraph函数对来自APIG调用的返回结果进行了封装,APIG触发器要求函数的返回结果中必须包含body(String)、statusCode(int)、headers(Map)和isBase64Encoded(boolean),才可以正确返回。
API的认证方式(APIG触发器参数)。APIG触发器此参数必填。 IAM:IAM认证,只允许IAM用户能访问,安全级别中等 APP:采用Appkey&Appsecret认证,安全级别高,推荐使用 NONE:无认证模式,所有用户均可访问,不推荐使用 枚举值: IAM APP NONE func_info 否 ApigTriggerFuncInfo
命令解析 当执行命令remove -h/remove --help时,可以获取帮助文档。 在该命令中,包括了四个子命令: function:删除指定的函数 trigger:删除指定的触发器 version:删除指定的版本 alias:删除指定的别名 参数解析 表1 参数说明 参数全称
本示例将调用部署的函数,并在终端中输出调用的结果。 带数据的函数调用 serverless invoke --function functionName --data '{"name": "Bob"}' 此示例将使用提供的数据调用函数,并在终端中输出调用的结果。 带传递数据的函数调用
如何在扩展中使用OpenTelemetry API 遥测是一种特殊的扩展,扩展进程中必须完成以下工作才能成功启用遥测功能: 在使用OpenTelemetry API之前,需要先注册拓展,具体内容可参考扩展API使用。 在拓展启动一个httpClient,向FunctionGraph发送注册Telemetry
权限。 创建CTS触发器 以创建一个Python函数为例,介绍如何在函数中配置CTS触发器。 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击右上方的“创建函数”,进入“创建函数”页面。 设置以下函数信息。 函数名称:输入您自定义的函数名称,例如:HelloWorld。
参数解析 操作案例 remove命令 命令解析 当执行命令version -h/version --help时,可以获取帮助文档。 在该命令中,包括了两个子命令: list:查看版本列表 publish:发布版本 父主题: 版本 version