表9 DMSTriggerEvent相关方法说明 方法名 方法说明 getQueueId() 获取队列ID。 getRegion() 获取区域名称。 getEventType() 获取事件类型。(返回“MessageCreated”) getConsumerGroupId() 获取消费组ID。
表9 DMSTriggerEvent相关方法说明 方法名 方法说明 getQueueId() 获取队列ID。 getRegion() 获取区域名称。 getEventType() 获取事件类型。(返回“MessageCreated”) getConsumerGroupId() 获取消费组ID。
表9 DMSTriggerEvent相关方法说明 方法名 方法说明 getQueueId() 获取队列ID。 getRegion() 获取区域名称。 getEventType() 获取事件类型。(返回“MessageCreated”) getConsumerGroupId() 获取消费组ID。
APIG触发器函数工作流后端详情(APIG触发器参数)。APIG触发器此参数必填。 sl_domain String APIG系统默认分配的子域名(APIG触发器参数)。 最小长度:1 最大长度:255 backend_type String API的后端类型(APIG触发器参数)。
终端节点 终端节点即调用API的请求地址,不同服务不同区域的终端节点不同,您可以从地区和终端节点中查询服务的终端节点。 基本概念 账号 您注册公有云服务时的账号,账号对其所拥有的资源及云服务具有完全的访问权限,可以重置用户密码、分配用户权限等。由于账号是付费主体,为了确保账号安全
APIG触发器函数工作流后端详情(APIG触发器参数)。APIG触发器此参数必填。 sl_domain String APIG系统默认分配的子域名(APIG触发器参数)。 最小长度:1 最大长度:255 backend_type String API的后端类型(APIG触发器参数)。
APIG触发器函数工作流后端详情(APIG触发器参数)。APIG触发器此参数必填。 sl_domain String APIG系统默认分配的子域名(APIG触发器参数)。 最小长度:1 最大长度:255 backend_type String API的后端类型(APIG触发器参数)。
per.hashicorp.com/terraform/language,此文不做赘述。 编写函数资源脚本 华为云在Terraform已经注册了provider,函数作为资源挂在华为云的provider下。参考文档https://registry.terraform.io/pro
设备验证码的有效时间,单位:秒,默认值:0。若设备在有效时间内未接入物联网平台并激活,则平台会删除该设备的注册信息。若设置为“0”,则表示设备验证码不会失效(建议填写为“0”)。注意:只有注册设备接口或者修改设备接口修改timeout时返回该参数。 最小值:0 最大值:2147483647
设备验证码的有效时间,单位:秒,默认值:0。若设备在有效时间内未接入物联网平台并激活,则平台会删除该设备的注册信息。若设置为“0”,则表示设备验证码不会失效(建议填写为“0”)。注意:只有注册设备接口或者修改设备接口修改timeout时返回该参数。 最小值:0 最大值:2147483647
函数的URN(Uniform Resource Name),唯一标识函数。 func_name String 函数名称。 domain_id String 域名id。 runtime String FunctionGraph函数的执行环境 Python2.7: Python语言2.7版本。 Python3
获取上传的文件 以Python语言为例,如果用户用os.getcwd()查看当前目录的话,会发现当前目录是/opt/function,但实际代码是传到/opt/function/code里的。 有2种方法可以获取到上传的文件: 函数里使用cd命令切换路径到/opt/function/code
限制 HTTP函数只允许创建APIG共享版、APIG专享版、APIC的触发器类型,其他触发器不支持。 同一个函数支持绑定多个 API 触发器,但所有 API 都必须在一个APIG服务下。 针对HTTP函数,用户的HTTP响应体不超过6M。 不支持长时运行和异步调用,不支持重试。 父主题:
代码文件解压后的源代码大小不能超过1.5G,如需部署超大代码请提交工单处理。 当代码编辑器中部署的代码大于20M时将不展示代码,如图1所示,但仍可以正常测试函数代码。 图1 编辑器不展示代码 前提条件 已创建桶并将函数代码文件上传至OBS桶。 上传函数代码 登录对象存储服务控制台,
码文件 如果代码中包含敏感信息(如账户密码等),请自行加密,以防信息泄露。 当代码编辑器中部署的代码大于20M时将不展示代码,如图1所示,但仍可以正常测试函数代码。 图1 编辑器不展示代码 上传函数代码 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 在函数列表中,单击函数名称进入详情页。
上面的例子是APIG触发器的事件类型,如果是其他触发器类型需要修改main函数的内容,例如cts触发器修改为runtime.Register(CtsTest),目前只支持注册一个入口。 当函数的事件源是APIG时,相关约束条件请参考Base64解码和返回结构体的说明。 编译和打包 函数代码编译完成后,按照如下方式编译和打包。
开发者无法从invoke的响应中获取initializer预期的返回值。 超时时间 开发者可单独设置initializer的超时时间,与handler的超时相互独立,但最长不超过 300 秒。 执行时间 运行函数逻辑的进程称之为函数实例,运行在容器内。FunctionGraph会根据用户负载伸缩函数实例。每
dumps(event,ensure_ascii=False) return output 当代码编辑器中部署的代码大于20M时将不展示代码,如图1所示,但仍可以正常测试函数代码。 图1 编辑器不展示代码 在线编辑函数代码 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 在函数列表中,单击函数名称进入函数详情页。
都可以使用Serverless CLI。 全局安装工具的缺点是无法将版本固定在package.json内部。如果升级Serverless,但您的同事或CI系统不升级,这可能会导致问题。您可以在serverless.yml中使用某个特性,而不必担心CI系统会使用旧版本的Serverless进行部署。
Serverless化改造 本章节介绍使用函数对MetaERP业务场景进行微服务Serverless化改造。基于函数工作流服务可将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。
您即将访问非华为云网站,请注意账号财产安全