检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例概述 本手册基于函数工作流服务实践所编写,用于指导您使用函数工作流服务实现处理DIS数据的功能。 场景介绍 使用数据接入服务(DIS)采集IOT实时数据流,需要将采集到的数据进行处理(比如格式转换),然后存储到表格存储服务(CloudTable Service)中,使用Fun
MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
核心概念 以下将介绍Framework的主要概念,以及它们与华为云函数工作流的关系。 函数 函数是华为云函数工作流函数。它是一个独立的部署单元,就像微服务一样。它只是部署在云中的代码,主要是为了执行单个任务而编写,例如: 将用户保存到数据库。 处理数据库中的文件。 您可以在代码中执行多个
如果您选择华为云作为提供商,则服务中的events仅限于华为云API网关(APIG)和OBS,具体详情请参见事件列表。 部署后,Framework将设置您的function应该侦听的相应事件配置。 配置 事件属于每个函数,可以在serverless.yml的events属性中找到。 # serverless
下介绍计算资源消耗的方式: 函数计算资源消耗是函数所选内存和函数执行时长的乘积,执行时长是从函数代码开始执行的时间算起到其返回或终止的时间为止,计量的粒度是1毫秒,不足1毫秒按1毫秒计费。例如,函数A执行了0.5毫秒、函数B执行了2.3毫秒,则计算函数资源消耗时,函数A执行时长按
函数指标 获取按指定指标排序的函数列表 租户函数统计信息 获取指定时间段的函数运行指标 查询函数实例使用情况指标 查询函数实例流量指标 父主题: API
定制运行时方式创建GPU函数 FunctionGraph支持运行时语言是“定制运行时”的函数启用GPU功能,进而帮助用户有效地解决GPU长驻使用方式导致的资源浪费、高成本、低弹性等问题,为用户提供更加便捷、高效的GPU计算服务。 约束与限制 GPU型号当前仅支持NVIDIA-T4。 定制运
配置函数流的EG服务组件 配置函数流的函数服务组件 配置函数流的子流程控制器组件 配置函数流的并行分支控制器组件 配置函数流的开始控制器组件 配置函数流的异常处理控制器组件 配置函数流的循环控制器组件 配置函数流的时间等待控制器组件 配置函数流的服务控制器组件 配置函数流的条件分支控制器组件
同步执行工作流 异步执行工作流 删除函数流 查询函数流 创建函数流 获取指定函数流执行实例列表 获取指定函数流执行实例 获取指定函数流实例的元数据 修改指定函数流实例的元数据 获取函数流指标 获取指定函数流指标 重试函数流 停止函数流 分页查询指定函数流记录 回调工作流 父主题: API
欠费说明 您使用函数工作流时,账户的可用额度小于待结算的账单,即被判定为账户欠费。欠费后,可能会影响您的服务资源的正常运行,请及时充值。 当账号进入欠费状态时,需要在约定时间内支付欠款,详细操作请参考欠费还款。 欠费原因 在按需计费模式下账户的余额不足。 欠费影响 欠费后,您无法创建、执行函数及对资源执行任何操作。
已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 已创建OBS桶,用于存放打包好的依赖包文件,更多详情请参见创建桶。 开始使用本案例前请在本地安装好18.15.0版本的Node.js运行环境。 当前华为云函数工作流服务支持的Node.js运行时最高版本为18.15.0、Next
函数计算平台默认提供的按量GPU实例使用方式,会自动管理GPU计算资源。根据业务的请求数量,自动弹性GPU实例,最低0个实例,最大可配置实例数量。 规格最优 函数计算平台提供的GPU实例规格,根据业务需求,选择卡型并配置使用的显存和内存的大小,为您提供最贴合业务的实例规格。 成本最优
图1 配置测试事件 在“配置测试事件页”,输入配置信息,如图2所示。 配置测试事件:选择“创建新的测试事件”。 事件模板:选择“数据接入服务(DIS)”。 事件名称:输入您自定义的事件名称,此处以“dis-test”为例。 图2 测试事件 单击“创建”,完成测试事件配置。 父主题:
函数应用中心 查询应用程序模板详情 查询应用程序模板列表 查询应用程序列表 创建应用程序 查询应用程序详情 删除应用程序 父主题: API
Redis客户端支持添加自动重试机制,确保在执行Redis操作失败后重试特定次数,这样能大幅度降低暂时性故障影响。例如:发生瞬时的网络抖动、磁盘抖动导致服务暂时不可用或者调用超时的情况下,提高Redis操作的成功概率。 连接DCS单机、主备、读写分离、Proxy集群实例添加Retry配置,退避策略为指数退避
my-service 选项 --template-url或-u:指向远程托管模板的URL。如果未指定--template和--template-path,则该选项必填。 --template-path:模板的本地路径。如果未指定--template和--template-url,则该选项必填。
为什么首次调用函数时速度会比较慢? 因为函数是冷启动的,所以如果有初始化或者函数中有第一次执行比较耗时的操作(例如加载函数代码及依赖包),第一次请求会比较慢,后面接着的请求就会很快,因为此时容器还没有销毁。如果间隔一分钟没有请求,容器就会销毁。 如果您使用的是C#或者Go语言,因为机制原因,启动
上月未使用的免费额度清零,重新计算。 当函数是预留实例模式且开启空闲模式时,在预留实例生命周期内中,空闲时间产生的计量时间不包含在每月400,000GB-秒的免费额度里。 表1显示了函数工作流配置不同内存规格时的免费执行额度。 表1 免费执行额度 内存(MB) 每个月的免费执行额度(秒)
于函数的API终端节点。 要创建HTTP终端节点作为华为云函数工作流的事件源,请使用http事件语法。 HTTP终端节点 此设置指定当有人通过GET请求访问函数API终端节点时,应运行first函数。您可以在部署服务后运行serverless info命令来获取终端节点的URL。
合规政策前提下自动将客户应用和数据转离受影响区域,保证业务的连续性。为了减少由硬件故障、自然灾害或其他灾难带来的服务中断,华为云为所有数据中心提供灾难恢复计划。 FunctionGraph的资源在多个分区部署,具有更高的可用性、容错性和可扩展性。 父主题: 安全