检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
排队成功后请求就返回,服务端在空闲的情况下会逐个处理排队的请求。 触发器 触发函数执行的事件。 函数流 用户通过在UI界面拖拽组件、配置组件和连接组件进行可视化编排,创建函数流任务,完成复杂场景的编排。 单实例多并发 单实例多并发是指单个实例可以同时处理的请求数量。 自定义镜像函数
name=fg_user,响应如下。 图6 调用函数 默认生成的APIG触发器的调用URL为“域名/函数名”,在本案例中即:https://your_host.com/springboot_demo,URL中包含了函数名springboot_demo作为path的第一部分。如果直接Get https://your_host
创建快速函数流时可配置此参数。开启后,函数流执行支持返回流式数据,可参见流式文件处理。 需函数流中函数节点的代码调用流式数据接口。 描述 输入函数流的简要描述。 表达式说明 函数流的异常处理控制器组件中配置“重试条件(JSONPath)”和条件分支控制器组件中“输入过滤表达式/输出过滤表达式”的JSONPath表达式结构为[JsonPath]
数任务执行的工作流。 用户通过在可视化的编排页面,将事件触发器、函数和流程控制器通过连线关联在一个流程图中,每个节点的输出作为连线下一个节点的输入。编排好的流程会按照流程图中设定好的顺序依次执行,执行成功后支持查看工作流的运行记录,方便您轻松地诊断和调试。 函数流功能特性和优势:
json、package-lock.json文件。 npm init -y npm i koa 创建index.js文件,在index.js文件中引入koa框架,koa框架的使用参考koa指南。 代码示例: const Koa = require("koa"); const app = new
配置函数流 创建函数流 启动函数流 函数流组件配置说明 管理函数流
需要用户自己创建对象。新创建的pom.xml中dependency应该为空,迁移过程中根据需要添加依赖,不用的jar包尽量不引入,根据需要在pom.xml中添加jar包依赖。 新增函数平台依赖,引入请求参数和响应类。 在pom文件中添加如下依赖: <dependency>
无自定义参数 Initializer不支持用户自定义参数,只能获取FunctionGraph提供的context参数中的变量进行相关逻辑处理。 无返回值 开发者无法从invoke的响应中获取initializer预期的返回值。 超时时间 开发者可单独设置initializer的超时时间,与h
为了降低冷启动时间,可以对应用程序进行瘦身,比如在程序中移除不必要的代码、减少不必要的第三方库依赖等。例如,在Node.js中执行“npm prune”命令、在Python中执行“autoflake”。另外,某些第三方库中可能会包含测试用例源代码、无用的二进制文件和数据文件等,
fgs-deploy-test services: component-test: # 服务名称 component: fgs # 组件名称 props: region: ${vars.region} function: functionName:
说上一个步骤的输出是下一个步骤的输入,比如上述图片处理工作流中,图片压缩的结果是打水印步骤的输入数据。 在普通的服务编排中,由于需要精准控制各个服务的执行顺序,所以控制流是工作流的核心部分。然而在文件处理等流式处理场景中,对控制流的要求并不高,以上述图片处理场景举例,可以对大图片
限期(最大有限期为24小时)进行重试。重试次数和配置的最大重试次数一致,重试有效期和配置的消息最大有效期一致。 幂等性 在编程中,幂等性指应用程序或组件具备识别重复事件和防止重复、不一致或数据丢失的能力。若需要函数保持幂等性,可以通过函数逻辑设计来正确处理重复的事件。 幂等函数逻辑有助于减少以下问题:
比如在线题库场景中,可以把原来加载在容器中的题库数据通过外部文件系统挂载盘方式挂载到容器中。 FunctionGraph通过LTS日志采集容器输出到控制台的所有日志,可以通过标准输出或者开源日志框架重定向到控制台的方式打印业务信息。打印的内容建议包括系统时间、组件名称、代码行、关键数据等来方便定位。
1003,gid 1003 启动容器。uid、gid可以在函数页面的“设置 > 常规设置 >容器镜像覆盖”板块中修改,但不可以是root或其他保留id。 HTTP函数示例中涉及的8000端口请勿修改。 如果使用Alpine版的基础镜像,请使用“addgroup”和“adduser”命令。
SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压 将zip中的Runtime-2.0.5.jar拷贝到本地目录,例如d:\\runtime中,在命令行窗口执行如下命令安装到本地的maven仓库中。 mvn install:install-file -Dfile=d:\runtime\RunTime-2
CMD:容器的启动命令,例如“/bin/sh”。该参数为可选参数,不填写,则默认使用镜像中的Entrypoint/CMD。 Args:容器的启动参数,例如“-args,value1”。该参数为可选参数,不填写,则默认使用镜像中的CMD。 用户ID:输入用户ID。 用户组ID:输入用户组ID。 完成后单击“创建函数”。
性定义在对象说明中。 HC.Serverless.Function.Common –部署在FunctionGraph服务中的项目工程需要引入该库,其中包含IFunctionContext对象,详情见context类说明。 创建csharp函数时,需要定义某个类中的方法作为函数执行
body) 将输入进行base64编码,并设置到Body中。 addHeader(String key, String value) 增加一组Http header。 removeHeader(String key) 从现有的header中移除指定header。 addHeaders(Map<String
me SDK到本地开发环境解压。 图2 下载SDK解压 配置依赖 如图3所示,在工程目录下创建lib目录,将zip中的Runtime-2.0.5.jar拷贝到该目录中,并把该jar添加为工程依赖。 图3 配置依赖 配置函数资源 如图4所示,创建包com.huawei.demo,并在包下创建TriggerTests类。