-
【学习赛简介】AIGC作为当下最热门的技术领域,逐渐深入到了人们生活工作的方方面面,在各个领域都有着广泛的应用场景。同时也面临着诸多挑战,包括硬件成本高昂、资源分配困难以及部署与维护复杂等问题。而随着Serverless技术的发展,这些难题正在得到有效解决,为AIGC应用的广泛应用打开了新的可能性。本赛道围绕华为云FunctionGraph和ModelArts服务,并结合CodeArts IDE、开发者空间等,展示Serverless如何帮助开发者快速构建AI应用,从而简化AIGC应用的部署和管理流程,为用户提供了更加便捷、高效的应用体验。开发者可根据本指导文档,完成相应环节后提交,即可参与奖项。赛事详情请点击大赛首页链接>>Link。【环境准备】点击链接>>Link,根据领取指南免费领取云主机,成功领取后可开始实验操作。【环节一】Serverless Hello World1、创建函数点击链接>>Link进入函数工作流界面,点击“创建函数”,参数如下:创建方式:选择创建空白函数函数类型:HTTP函数区域:华北-北京四项目:保持默认函数名称:用户自定义企业项目:保持默认委托名称:保持默认点击“创建函数”,等待创建完成。2、测试函数在函数详情页,依次点击“代码”->“测试”->“创建”,来创建一个APIG触发器的测试事件。再次点击“测试”,即可在右侧看到测试结果。返回结果的Body体内容经过Base64编码,解码后可以看到其内容就是函数写入的内容。【环节二】实现AI 动漫头像制作功能1、前期准备1.1 订阅模型并部署 AI 应用在华为云控制台点击搜索框搜索“ModelArts”,点击“ModelArts”,选择“AI Gallery”。导航栏选择“模型”,搜索框输入“动漫”,选择“头像动漫化模型”。进入详情页,点击“部署”,选择“ModelArts”。选择ModelArts的云服务区域。跳转到订阅应用列表,如果页面提示需要创建委托,根据指引创建即可。委托创建成功后订阅应用列表,点击“部署”。点击右侧弹窗“部署”按钮,选择“在线服务”。资源池选择“公共资源池”,AI应用及配置选择“订阅应用”,选择AI应用及版本,计算节点规格选择“[限时免费]CPU:1核4GB”,勾选“我已阅读并同意以上内容”,点击“下一步”。点击“提交”。确认服务处于运行中状态,复制API接口公网地址备用。1.2 创建委托打开创建委托页面地址:https://console.huaweicloud.com/iam/?region=cn-north-4&locale=zh-cn#/iam/agencies/create输入委托名称、委托类型选择“云服务”、云服务选择“函数工作流FunctionGraph”。配置权限,选择ModelArts FullAccess。1.3 创建函数依赖包进入“函数工作流”界面,依次选择“函数”、“依赖包管理”,点击“创建依赖包”。填写“依赖包名称”,代码包上传方式为“从OBS上传文件”,将OBS链接粘贴到“OBS链接URL”中(OBS URL:cid:link_1 )运行时语言为“Python3.9”。1.4 下载示例代码点击>>Link,找到大赛【赛题详情】页底部的示例代码,下载并将其解压到本地任意目录。2、上传函数代码在函数详情页,依次点击“代码”->“上传自”->“zip文件”->“添加文件”。选择解压后的目录中的step1.zip,然后点击“确定”,等待代码更新成功。3、添加依赖包函数用到了Flask web框架,需要为函数添加所需依赖包。在函数详情页,选择“代码”,然后下滑到最底部,选择“添加依赖包”。参数如下:依赖包源:私有依赖包依赖包名称:选择前期准备中创建的依赖包版本:保持默认1点击“确定”。4、修改函数配置在函数详情页,依次点击“设置”->“常规设置”,修改以下参数:执行超时时间(秒):60内存(MB):256点击保存。在函数详情页,依次点击“设置”->“权限”,函数配置委托选择前期准备中创建的委托,点击保存。在函数详情页,依次点击“设置”->“环境变量”->“编辑环境变量”->“添加环境变量”。环境变量键值分别如下:键:MODEL_ART_API值:前期准备中部署后复制备用的API接口公网地址点击确定。点击“设置”->“高级设置”,打开“请求头传入密钥”开关,点击保存后重试5、创建触发器在函数详情页,点击“创建触发器”,触发器类型选择“API 网关服务 (APIG)”,然后点击“创建分组”跳转到APIG服务页面。点击右上角“创建分组”,分组名称可以保持默认,点击确定即可。回到函数页面,点击分组后的刷新按钮即可选中新创建的分组。其他参数如下:API名称:保持默认发布环境:RELEASE安全认证:None请求协议:HTTPS后端超时(毫秒):60000点击确定6、访问函数制作头像到这里函数和AI应用就已经部署好了,可以复制URL到浏览器打开web页面开始制作动漫头像。可以看到现在网页界面并不美观,我们可以利用函数快速发布的能力,快速修改我们的代码,实现快速迭代,下面我们利用这一能力美化网页界面,步骤如下7、更新代码使用任意文本编辑器打开示例代码code_demo/step2/ templates/index.html,复制文件内容回到函数页面,点击“代码”,打开templates/index.html,用复制的内容覆盖原有内容,然后点击“部署”,等待部署成功8、重新访问触发器URL可以看到,页面发生了变化【环节三】基于CodeArts IDE和FunctionGraph插件本地化开发阶段一和阶段二操作均基于网页进行,这与我们一般的开发流程并不相通,华为云发布的CodeArts IDE结合FunctionGraph开发插件可以为用户提供本地化开发、部署、调测的能力。1、安装FunctionGraph插件点击进入>>开发者空间-云主机,打开CodeArts IDE,点击左侧“扩展”搜索“CodeArts FunctionGraph”点击安装该插件。3、创建函数FunctionGraph插件安装后,打开插件,在插件窗口点击“…”选择“创建函数”,选择Http Function函数。选择Hello World。定义函数名:carton-generation,注意不要与已有函数同名。选择工程路径,选择后插件会在该路径下创建carton-generation工程。将示例代码step2目录中的所有文件复制工程目录的src目录,覆盖已有文件打开工程目录中的template.yml文件,修改以下参数:MemorySize: 256Timeout: 604、部署函数回到插件页面,选择部署函数。选择新建的函数下的yml文件。部署环境选择“华北-北京四”。等待部署成功。点击“选择要展示的Region”,选择“华北-北京四”,可以看到该区域下刚部署好的函数:carton-generation。右键选择函数,点击浏览器打开,跳转到函数详情界面。5、添加依赖包函数用到了Flask web框架,需要为函数添加所需依赖包。在函数详情页,选择“代码”,然后下滑到最底部,选择“添加依赖包”。参数如下:依赖包源:私有依赖包依赖包名称:选择前期准备中创建的依赖包版本:保持默认1点击“确定”6、修改函数配置在函数详情页,依次点击“设置”->“权限”,函数配置委托选择前期准备中创建的委托,点击保存在函数详情页,依次点击“设置”->“环境变量”->“编辑环境变量”->“添加环境变量”环境变量键值分别如下:键:MODEL_ART_API值:前期准备中部署后复制备用的API接口公网地址 点击“设置”->“高级设置”,打开“请求头传入密钥”开关,点击保存后重试7、创建触发器在函数详情页,点击“创建触发器”,触发器类型选择“API 网关服务 (APIG)”,然后点击“创建分组”跳转到APIG服务页面点击右上角“创建分组”,分组名称可以保持默认,点击确定即可。回到函数页面,点击分组后的刷新按钮即可选中新创建的分组。其他参数如下:API名称:保持默认发布环境:RELEASE安全认证:None请求协议:HTTPS后端超时(毫秒):60000点击“确定”8、调试函数回到IDE,右键选择函数,点击执行函数,打开调试界面,测试事件模板选择apig-event-template。修改测试事件,将path改为/,并点击测试可以在输出栏看到调试结果,状态码为200,表示执行成功9、访问函数制作头像到这里函数和AI应用就已经部署好了,可以复制URL到浏览器打开web页面开始制作动漫头像。【提交说明】方式一:参赛者按照指导文档完成应用后,分别将环节一、二、三的最终画面截图和对应的函数URN打包成RAR/ZIP压缩包上传至大赛“提交作品”页>>Link,命名方式为“姓名-联系方式”,赛事期间每人每天有2次上传机会。方式二:将环节二或环节三最终生成的应用及动漫头像截图发布到指导文档评论区,评论格式为华为云账号+截图+函数URN,可参考评论区一楼样式。
-
张嘉伟近年来,Serverless服务崛起的趋势是有目共睹的:从Berkeley将Serverless认定为云计算向用户呈现的新默认形态[1],到AWS、Google等头部厂商纷纷推出Serverless产品并成为爆款。这个趋势对于云计算平台是个必然,因为Serverless解放了用户管理和使用复杂云计算资源的双手,犹如第二次工业革命中内燃机汽车的出现解决了马车夫养马的麻烦,也推动高效、稳定的交通工具走进寻常百姓家。如同汽车由内燃机和转向机构等组件构成,Serverless平台可大致分为资源管理和任务编排[2],分别致力于提供高效且灵活的算力以及提供方便的用户程序执行方式。在Serverless如火如荼的同时,Regionless也是不可忽视的一个方向。Regionless实际上是华为云提出的概念,即为屏蔽掉云平台Region的差异,使得云服务的租户能像“用水和用电”一样随时随地使用云服务。Regionless的内涵实际上是丰富的,囊括了多个学术研究方向:可以是geo-distributed cloud,也可以是multi-cloud,还可以是cloud-edge computing、 hybrid cloud等,分别对应不同的能力。恰好,以上都涵盖在华为云分布式云原生服务提供的offerings中。既然Serverless和Regionless都是当前云原生发展的重要方向,也都基于同一个云平台资源底座构建,那么两者的发展必然不会是平行的:Serverless对基础设施进行了标准化,为应用Regionless化减少了管理和适配的成本;反过来,Regionless也是Serverless的重要组成,因其可以避免用户感知Region间的差异。事实上,早在2018年,就有学者关注到Serverless对底层差异的屏蔽以及平台提供商数量的快速增长,用户必然会有将Serverless业务部署至Regionless平台的诉求[3]。在此场景下,用户和平台设计者首当其中考虑到的就是如何充分利用分布在各个区域的计算资源以提升如并发度、时延等性能;同时,使用成本也是用户核心关注点,所以如何充分利用各个厂商的定价差异消减成本,同时也避免与厂商绑定(vendor lock-in)带来潜在的成本问题也需要充分考虑。因此,本文尝试基于分析现有的学术文章,剖析Serverless与Regionless并存时,在性能提升和成本控制两个方向的现状与挑战,以期抛砖引玉。性能提升早在2019年,来自华盛顿大学的研究者[4]已经注意到Serverless工作流中的计算任务会涉及存储在不同区位的数据,并且这些数据在对应区位会存在隐私性等问题,因此需要将任务分布到对应数据所在的云平台Region进行计算。为此,作者设计了跨Region的调度器GlobalFlow,其核心思想是将工作流中的任务根据对Region的依赖关系进行分组,形成子工作流调度到对应Region,并且在子工作流之间设计Connector以便于数据交换。同样考虑到数据分布的问题,即数据可能分布在不同的区域,而且由于数据隐私性、传输开销等问题,并不能方便地集中在一个区域内处理,[5]中的作者设计了FaDO系统用以编排Serverless计算任务和数据。如图1所示,FaDO通过Backend Server记录每个区域存储的数据,这些信息则被提供给Load Balancer用于将用户请求的计算任务匹配并发送到对应的区域。并且在规则允许范围内,Backend Server还会将数据备份在不同的区域间进行复制,以配合计算任务的并发度。图1 FaDO系统执行流程除了数据的分布会促使Serverless必须接受Regionless,[6]的作者还观察到:一个云厂商的每个Region、每个厂商都有不同的并发度限制,并且之间的数据传输时延、存储的数据、每种任务执行的速度等能力均不一致。简单的将应用分发到多云/多Region上并不一定能充分提升并发度和整体完成时间。例如图2左侧所示(每种颜色标记的云上并发度限制为1000,整体应用由f1-f4任务构成,也需要运行1000次),如果f1在蓝色标识的云资源上运行地快,而f4则在橙色上快时,均匀分布则不能利用这个性能差异,而且在橙色云上,f2和f3并不能充分并行(完全并行需要1200并发度),进一步影响整体执行时间。在此情况下,如何合理选择任务所使用的云资源(如图2右侧所示),以有效地提升并发度是[6]所研究的重点。为此,[6]中提出了基于三层数学抽象构建的调度器算法FaaSt。FaaSt能够合理地将各个任务调度和合适的云厂商/Region上,使得整体的任务完成时间最短。经过在AWS和IBM云上4个Region的实验对比,FaaSt调度后的任务完成时间比单云提升2.82倍。图2 Serverless并发度示意图成本控制为了协助用户选择合适的平台以执行Serverless任务,[3]中提出了MPSC框架,其核心思想是通过实时监控Serverless任务在不同平台上执行的性能,进而选择最具性价比的平台。MPSC的架构如图3所示,其中Monitoring Controller为核心组件,用于协调监控指标采集分析和任务调度。Function Executor则负责将任务分发至各个平台执行,并采集对应指标。除此之外,还有三个存储模块分别用于储存用户配置、监控指标、用户定义的调度逻辑。图3 MPSC系统架构在Serverless任务能够合理分发的基础之上,来自CMU和UBC的学者提出了虚拟Serverless提供商(virtual Serverless provider, VSP)[7]的概念。VSP作为第三方的平台,聚合了各个厂商的Offerings,为用户提供统一的使用接口,为用户动态选择最具性价比的Offering。VSP整体架构如图4所示,其中核心组件包括:Scheduler用以根据性能指标和花费计算最合适的云平台;Controller则负责将应用请求映射到Scheduler选择的云平台上;Bridge用于不同云平台之间任务的交互;Monitor用以记录调度到不同平台上任务的执行性能;Pre-Load用于初始化新接入的云平台;而Cache则记录了平台执行情况用于后续分析优化。通过在AWS和Google云平台上的测试,VSP将Serverless任务的吞吐量提升了1.2-4.2倍,同时降低了54%的云资源使用成本。图4 VSP系统架构进一步地,一个面向多云Serverless的开源library在[8]中提出了。此library主要包括两部分内容(如图5所示):1)统一的API和SDK,用于让用户不需要感知底层差异即可将不同人物部署在不同的云平台上,并且为了降低用户的学习门槛,还提供了基于某一家云平台提供商的API和SDK(如AWS)拓展出来的、可以将任务部署在其他云平台的API和SDK;2)分析系统(EAS),用于分析每个任务最适合的云平台,包含用于将任务分发至不同平台的adaptor、各个平台log的收集器Cloud Logging Query、各个云厂商的计费模型Cost Model、接入各个云平台的鉴权组件Authentication、任务执行的记录Local Logging以及性能分析器Analysis。图5 面向多云的Serverless开源library挑战从上述现有工作可以看出,当前学术界对于Regionless和Serverless结合的研究主要面向geo-distributed cloud和multi-cloud这两个场景下的任务编排系统架构和算法。然而这还远远不足以构建高效、易用的Regionless化的Serverless平台。类似于Berkeley将Serverless分成Backend-as-a-Service (BaaS)和Function-as-a-Service (FaaS)两个层级[1],我们也可以将当前所面临的挑战拆分成底层资源供给以及上层应用管理在Regionless场景的Serverless化:• 底层资源上,我们需要考虑:1) 通盘考虑每个区域计算资源池的异构性、资源余量、成本等因素的情况下,提供足够的资源同时又不因为Serverless极强的弹性而造成过多浪费[9];2) 从网络角度,在规避部分地理区位间带宽、时间等限制的同时,提供支持动态创删的低性能损失、免配置的网络;3) 存储上,提供用户无感知的跨Region数据预存取与缓存。• 应用管理层面上看,需要达到如下:%2) 任务编排上,需要对计算、网络、存储联合进行调度以避免其中某项瓶颈对整体应用的影响;%2) 编程框架上,需要在最小甚至没有侵入式修改的前提下,将用户应用构建或迁移至该平台;%2) 从监控运维角度,需要实现非侵入式、高精度地采集Serverless实例的指标,并基于分布在各个区域的监控数据进行智能异常检测、根因分析。以上也将云厂商和学术界共同打造高效且易用的Regionless下Serverless平台,共同面临的挑战。参考文献[1] J. Schleier-Smith, et. al. "What serverless computing is and should become: The next phase of cloud computing," Communications of the ACM, vol. 64, no.5, pp. 76-84, 2021.[2] Li, Zijun, et. al. "The serverless computing survey: A technical primer for design architecture." ACM Computing Surveys (CSUR), vol. 54, no.10s, pp. 1-34, 2022.[3] A. Aske, et. al. "Supporting multi-provider serverless computing on the edge," in Proc. Int. Conf. Parallel Processing Companion, 2018.[4] G. Zheng, et. al. "GlobalFlow: a cross-region orchestration service for serverless computing services," in Proc. IEEE Int. Conf. Cloud Comput. (CLOUD), 2019.[5] C. Smith, et. al. "Fado: Faas functions and data orchestrator for multiple serverless edge-cloud clusters," in Proc. IEEE Int. Conf. Fog and Edge Comput. (ICFEC), 2022.[6] S. Ristov, et. al, "FaaSt: Optimize makespan of serverless workflows in federated commercial FaaS," in Proc. IEEE Int. Conf. Cluster Comput. (CLUSTER), 2022.[7] A. Baarzi, et. al. "On merits and viability of multi-cloud Serverless," in Proc. ACM Symp. Cloud Comput., 2021.[8] H. Zhao, et al. "Supporting Multi-Cloud in Serverless Computing," arXiv preprint arXiv:2209.09367, 2022.[9] A. Mampage, et. al. "A holistic view on resource management in serverless computing environments: Taxonomy and future directions," ACM Computing Surveys (CSUR), vol. 54, no. 11s, pp. 1-36, 2022.添加小助手微信k8s2222,进入云原生交流群
-
是否有一些最佳实践或工具可以在华为Serverless函数工作流中进行安全性和隐私保护,以确保数据的安全性和可靠性。
-
否有一些最佳实践或工具可以在华为Serverless函数工作流中实现代码封装和复用,以减少代码冗余和提高可维护性。
-
是否有一些最佳实践或工具可以在华为Serverless函数工作流中进行事件触发和异步处理,以提高系统的响应速度和效率。
-
是否有一些最佳实践或工具可以在华为Serverless函数工作流中进行错误处理和日志管理,以帮助我更好地监控和调试代码。
-
我发现高可用性和弹性扩展是一个重要的问题,需要解决。我想知道是否有一些最佳实践或工具可以在华为产品的Serverless函数工作流中实现高可用性和弹性扩展,以提高系统的稳定性和性能。
-
近日,华为云全新上线Serverless应用中心,提供大量应用模板,帮助用户实现一键部署函数和周边依赖资源,节省部署时间,快速上手将应用部署到华为云函数工作流FunctionGraph,并一键开通周边依赖资源。本次Serverless应用中心上线文生图应用,用户无需下载源代码、了解各种安装部署知识、安装复杂的依赖,通过华为云Serverless应用中心即可一键创建AI文生图应用,体验 “0” 构建门槛、“0” 资源闲置并具备极致弹性的Serverless AI绘图能力。文生图应用,通俗来说就是用户输入一段描述语言,AI即可生成与文字描述匹配的创意画作,可广泛应用于图像修复、角色造型、广告营销、插画生成等多个领域。然而,想要快速、无忧、稳定的使用文生图应用却面临不小的挑战,除了对应用本身的学习之外,还涉及到应用的运行环境准备、资源分配以及安全加固等一系列工作,华为云Serverless应用中心托管的Stable Diffusion(以下简称SD)很好的解决了这些难题。面对SD开发者Serverless应用中心能方便快捷的完成SD的一键部署、开通。用户无需运维云上资源,即可享受华为云上高可用、高稳定的SD应用,上手成本极低。Serverless SD默认提供Stable Diffusion WebUI及自定义模型上传功能,用户可以按照自身需求上传对应的文生图模型满足自身个性化的图片生成需求。面对SD运维工程师基于华为云函数工作流FunctionGraph托管的SD享受Serverless带来的红利:按需使用,根据创建应用时的调用次数收费,无请求不计费;天生适合具备明显波峰波谷业务特征的AI画图业务,避免了闲时的资源浪费,还可以根据业务请求量自动扩容;依托于函数工作流细粒度的资源调度能力,大大提升了资源利用率,相比于自建方案节省更多的底层资源成本。同时,SD运维工程师可配置华为云IAM、APP、自定义等多种认证方式,保障SD的访问安全。仅需两步,即刻体验SD快速生成图像的便捷和高效:● 第一步:用户一键部署、直接使用用户进入华为云Serverless应用中心,选择“AI绘画Stable Diffusion”模板进行简单的应用配置之后,点击“立即创建”即可拥有“AI绘图”、“自定义模型传输”等能力,可直接访问Stable Diffusion WebUI界面进行绘图。● 第二步:用户上传第三方模型,满足自定义绘图需求华为云Serverless应用中心托管的SD允许用户上传自定模型,用户初始化自定义模型后可以根据自己的需求和特定场景选择合适的模型进行绘图,实现多样化的创造效果。华为云Serverless应用中心的文生图应用能够应用于多个行业场景,在线教育平台,帮助实现AI绘画课程,为学生提供智能化学习体验;在服装行业,快速让AI模特适配服装,帮助服装公司降低商品图片素材的生产成本和制作周期。转自华为云公众号
-
执行方法为"index.main_handler"以下是我的代码def main(): print('start') logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s') config = configparser.ConfigParser() config.read('user.ini', encoding="utf-8") for section in config.sections(): username = config.get(section, 'username') password = config.get(section, 'password') name = config.get(section, 'name') paper = PracticePaper(username, password, name) paper.run() print('end') def main_handler(event, context): return main() if __name__ == '__main__': main()我的代码主逻辑在一个名为main()的函数中,这个函数在最后调用自己main()。在本地运行正常,但是部署到云函数后,主逻辑就没有执行,日志只打印了start和end,但是中间的代码没有执行
-
中奖结果公示感谢各位小伙伴参与本次活动,本次活动获奖名单如下:请各位获奖的伙伴在9月10日之前点击此处填写收货地址,如逾期未填写视为弃奖。再次感谢各位小伙伴参与本次活动,欢迎关注华为云DTSE Tech Talk 技术直播更多活动~直播简介【直播主题】云原生Bursting如何助力企业降本增效?【直播时间】2023年9月6日 16:30-18:00【直播专家】刘雨青 华为云云原生DTSE技术布道师【直播简介】线下IDC自建K8s集群容量无法满足业务峰值诉求?IDC基础设施扩容流程慢,一次性投入大,管理维护成本高?本期直播将聚焦华为云Serverless容器服务CCI提供的云原生CloudBursting解决方案,为用户提供资源随启随用、业务灵活弹性分配以及基础设施免运维的极致体验,助力企业降本增效。直播链接:cid:link_1活动介绍【互动方式】直播前您可以在本帖留下您疑惑的问题,专家会在直播时为您解答。直播后您可以继续在本帖留言,与专家互动交流。我们会在全部活动结束后对参与互动的用户进行评选。【活动时间】即日起—2023年9月7日【奖励说明】评奖规则:活动1:直播期间在直播间提出与直播内容相关的问题,对专家评选为优质问题的开发者进行奖励。奖品:华为云定制U型按摩枕活动2:在本帖提出与直播内容相关的问题,由专家在所有互动贴中选出最优问题贴的开发者进行奖励。奖品:华为云定制POLO衫更多直播活动直播互动有礼:官网直播间发口令“华为云 DTSE”抽华为云定制鼠标垫、填写问卷抽华为云定制保温杯等好礼分享问卷有礼 :邀请5位朋友以上完成问卷即可获得华为云定制帆布袋。老观众专属福利:连续报名并观看DTT直播3期以上抽送华为云DTT定制T恤。【注意事项】1、所有参与活动的问题,如发现为复用他人内容,则取消获奖资格。2、为保证您顺利领取活动奖品,请您在活动公示奖项后2个工作日内私信提前填写奖品收货信息,如您没有填写,视为自动放弃奖励。3、活动奖项公示时间截止2023年9月7日,如未反馈邮寄信息视为弃奖。本次活动奖品将于奖项公示后30个工作日内统一发出,请您耐心等待。4、活动期间同类子活动每个ID(同一姓名/电话/收货地址)只能获奖一次,若重复则中奖资格顺延至下一位合格开发者,仅一次顺延。5、如活动奖品出现没有库存的情况,华为云工作人员将会替换等价值的奖品,获奖者不同意此规则视为放弃奖品。6、其他事宜请参考【华为云社区常规活动规则】。
-
华为MetaERP资产核算系统使用华为云函数工作流FunctionGraph(基于元戎内核)微服务serverless化解决方案,实现了复杂企业应用MetaSaaS Serverless化,成本节约70%。资产核算是指在一定的财务周期,对企业拥有的房屋建筑物、机器设备、商标权和专利权等资产的取得、折旧和处置的会计核算,反映企业固定资产、无形资产的增减变动和价值分摊活动。华为资产核算产品,支撑企业资产从获取到处置全生命周期的管理和交易核算,在资产使用寿命内遵循会计准则和税法折旧的要求系统地计提资产折旧费用。华为集团资产核算场景非常复杂,具备以下四大特点:数据海量管理的固定资产和无形资产的数量多达200多万项;涉及国家多覆盖国际会计准则和全球170多个国家的会计准则和税法政策要求;业务流量不均衡平时业务流量少,月末结账场景流量巨大,特别是在季结、年结时,1~2小时内需完成200多万笔资产折旧、300多万的分录生成;原先业务是基于关系型数据库构建,这套架构能很好地解决数据一致性控制,但强依赖数据库性能,在业务数据流量不均衡的情况下,系统计算资源无法实现弹性伸缩。平日业务数据流量小时,系统资源大量闲置未得到有效利用,一旦遇到业务冲刺、月结等数据洪峰,系统资源又无法弹性扩容,导致业务数据积压,严重影响业务处理效率。服务弹性慢,业务峰值处理性能不足:在月底、年底结账期,批量导入导出等任务集中生成,服务CPU资源利用率会瞬间突增至50%到100%不等。服务弹性能力较弱,启动时延超过了1分钟,一旦出现预留资源不足的情况,极易影响业务性能,导致无法在1~2小时内完成百万级资产核算业务的处理;周期性集中处理型业务,预置资源利用率低:以批量上载、资源折旧两个业务为例,虽然平时很少使用,但为了保证服务随时可用,仍然需要保持最低配置在线,业务平均资源利用率不到2%。随着资产核算业务的不断演进、微服务数量增加,资源成本问题被进一步放大;业务上线周期长,运维压力大:业务开发人员不仅要关注业务逻辑,还要额外考虑高并发等极端场景的处理,开发工作量大,问题多。在业务上线前需提前采购、配置硬件资源,日常运行时,不同服务弹性策略不同,需投入大量精力进行资源类的运维工作。业务的版本上线时间达到月级,无法快速响应客户需求;为了进一步优化资源成本、简化服务开发,实现应用的现代化的转型,MetaERP资产核算业务决定采用华为云函数工作流 FunctionGraph试点Serverless化服务改造:1、全自动弹性,算力随叫随到,轻松应对流量波峰资产核算业务相关服务采用Java开发,改造为函数后,面临冷启动的问题。通过创新的进程级快照加速方案,应用直接从初始化后的快照进行运行环境恢复,从而跳过复杂的框架启动、业务初始化阶段,助力资产核算业务冷启动时间缩短到7秒,相比之前一分钟的启动时延,性能提升10倍。同时,FunctionGraph按请求并发量全自动弹性,无需再手动扩缩容,弹性速度实时匹配业务量,轻松应对流量波峰。2、无请求时不需启动业务实例,资源成本降低70%函数实例随请求自动扩缩容,在没有请求时,实例会缩容到0。基于此能力,针对批量上载、资源折旧类业务场景,减少了最小预置实例资源,资产核算业务Serverless化改造后常驻实例资源降低75%,月均资源消耗降低70%,收益显著。3、存量业务无缝迁移,新业务开发运维效率提升3倍资产核算存量业务基于SpringBoot等微服务框架开发,直接改造为原生函数方式工作量非常大。为此FunctionGraph提供了Springboot等框架兼容能力,服务只需集成统一SDK,并进行少量配置文件修改,即可完成改造,实现微服务平滑Serverless化。同时,对比传统微服务框架,FunctionGraph内置心跳检测、服务治理等能力,使能业务更聚焦。同时,新业务使用华为云函数工作流 FunctionGraph开发,可拆解粒度更小、开发并行度更高。函数本身依赖后端数据库、消息队列等服务,需要集成多个SDK才能实现访问,开发复杂度高。对此FunctionGraph提供了统一对接后端链接能力(ServiceBridge),简化业务访问后端服务。ServiceBridge也天然具备弹性能力,当访问量激增时自动进行扩容。基于原生函数开发模式,可实现天级业务上线、免资源运维,以资产核算为例,业务上线时间从94人天(传统的应用构建流程)降低至30.5人天,大大提升了开发和运维效率。首战告捷持续推进MetaERP应用现代化华为云函数工作流FunctionGraph将持续打造通用Serverless技术竞争力,致力解决Java服务启动慢、弹性能力不足等问题,使能负载在硬件资源的“细粒度”复用,以提高资源的利用率。同时提供与“硬件无关”的编程抽象和系统服务,简化分布式应用的开发、部署和运维。MetaERP资产核算业务Serverless化后性能未劣化,常驻实例资源降低75%,月均资源消耗降低70%,成本优化收益明显。同时服务上线时间降至30.5人天,提升了开发运维效率。接下来,华为云函数工作流FunctionGraph将持续围绕“极简架构、极高质量、极低成本、极优体验”的目标,持续技术创新,助力MetaERP Serverless化,用技术力量提升企业服务质量、效率、体验。在2023年7月25日,由中国信息通信研究院(以下简称“中国信通院”)和中国通信标准化协会联合主办的2023可信云大会上,华为云函数工作流FunctionGraph凭借此最佳实践荣获“可信云2022-2023年度云原生-Serverless技术最佳实践”。转自华为云开发者联盟
-
近日,华为开发者大会2023(Cloud)在东莞成功举办,期间“全域Serverless化,引领下一代云计算新范式”专题论坛人气满满。华为云首席产品官方国伟携手业界专家、客户、伙伴,面向广大开发者,分享了在Serverless领域的前沿思考和实践。华为云致力于推进全域Serverless,通过核心产品全面的Serverless化,具有极简开发部署、极快自动弹性、极低成本消耗的优势,能够帮助企业缩短TTM从周到天、成本大幅降低、毫秒级扩容轻松应对流量洪峰,成就高质量增长的现代化企业,支撑千行百业应用现代化。华为云致力核心产品全面Serverless化华为云首席产品官方国伟介绍,华为云的目标是将各领域产品逐步Serverless化,包括函数工作流FunctionGraph、数据仓库GaussDB(DWS)、盘古大模型、AI开发生产线ModelArts、云数据库GaussDB(for MySQL)、事件网格EventGrid等产品,帮助企业缩短交付周期,提升上云效率,抢占市场先机。华为云Serverless以GP(General Purpose) Serverless为演进目标,在Serverless基础设施和基于元戎架构构建的分布式内核两方面做持续投入。应用托管运维提供了函数工作流FunctionGraph和云应用引擎托管CAE两种方式,支持Web应用、分布式Job应用、微服务应用等主流应用的全托管。大数据领域把数据作业流中的核心产品全部Serverless化,包括数据仓库GaussDB(DWS),数据湖探索DLI,云搜索CSS等都提供了Serverless版本;机器学习领域提供了开箱即用的AI开发生产线ModelArts,按需进行分布式训练,自动化模型生成;数据库通过存算分离,提供了以应用为中心的Serverless版本;应用集成领域提供事件网格EventGrid,以不同形式进行应用、数据、消息的集成。通过全面的Serverless化,开发者可以搭建各种场景下的复杂应用,按需计费,无需运维基础设施,享受云技术红利。方国伟预告了华为云产品动态。下半年华为云将发布两个新产品:一个是CCE Autopilot,目标是降低用户负担;另一个是轻量容器实例,面向中小企业,帮忙用户方便使用CCE Autopilot。在面向Cloud Bursting场景,去哪儿网基于华为云Serverless容器打造了灵活上云新体验,带宽成本下降了90%,批创性能提升70%,该方案可广泛应用于互联网行业。华为云FunctionGraph 2.0 四大核心能力全新升级:Serverless应用中心、智能Serverless化底座、异构Serverless资源池、大文件加速技术等能力全新升级,AIGC应用开发将更高效。在车联网场景,某Top车企使用FunctionGraph将业务Serverless化,实现了毫秒级弹性,成本降低40%。同时,华为云CAE产品升级:微服务Serverless托管,运维效率提升50%、实现自动跨AZ的高可用能力;并将GaussDB(for MySQL) Serverless化,实现业务无感知的极致弹性。DataArts数据治理生产线核心服务Serverless化全新升级,增强了Serverless大数据平台DLI的弹性伸缩能力,让Spark、Flink、SQL作业集群可以共享同一个弹性资源池,降低了30%资源消耗。华为云函数工作流FunctionGraph:助力企业快速构建敏捷弹性的现代化应用华为云PaaS服务Serverless产品总监分享了“迈向Serverless,快速构建敏捷弹性的现代化应用”的主题演讲,推出Serverless应用中心,该中心提供大量Serverless应用模板,能够一键部署函数和周边依赖资源,节省部署时间,让开发人员快速上手使用函数、创建Serverless应用。同时,发布《华为大型应用Serverless化最佳实践》,详细介绍了华为财经系统Serverless化改造实现流程及收益。现代化应用体现在应用架构、应用价值、应用体验、应用生成、应用交付、应用安全六个方面。那么Serverless如何帮助企业实现应用现代化?“Serverless代表计算、架构、开发模式3条演进线的交汇点:架构模式的演进,让开发者不需要关注底层资源,获取更高的弹性;开发模式的演进,通过FunctionGraph,将代码上传到平台上,应用即可快速运行;计算模式的演进,让开发者做到服务器无感知。华为云函数工作流FunctionGraph是Serverless的首要产品形态,可以快速构建敏捷弹性的现代化应用。”华为云PaaS服务Serverless产品总监介绍。华为云函数工作流FunctionGraph已支撑千行百业进行应用现代化,在车联网现代化方面,实现了架构的自动灵活扩展,实现了高度自动化运维,大幅降低了成本。在AIGC行业现代化方面,构建了全新的Serverless应用中心,帮助开发者快速完成从0到1业务开发,5分钟高效部署和发布AIGC应用,研发效能提升80%,另外依托更智能的Serverless底座,实现毫秒级极致冷启动,性能大幅提升。最佳实践:华为MetaERP资产核算Serverless化后,资源成本降低70%华为MetaERP财经领域首席架构师韩骁分享了“资源成本降低70%!华为MetaERP资产核算的Serverless实践”,基于FunctionGraph能力,提供微服务serverless化解决方案,能实现复杂企业应用MetaSaaS Serverless化。在MetaERP改造上,针对CPU使用率低、典型洪峰、最低资源在线、所需资源降不下来等业务痛点,使用Serverless后,函数化改造后性能未劣化,降低资源成本明显,常驻实例资源降低75%,月均资源消耗降低70%;另外,开发和运维效率大幅提升,从94人天降到30.5人天。华为云Serverless容器:开箱即用,简化用户体验华为云云原生产品总监在“Serverless容器开箱即用,简化用户体验”的主题演讲中表示,云原生向分布式化和Serverless化演进,华为云通过持续Serverless化,云原生产品全面进入自动驾驶时代,目前,云原生Serverless容器已支持多场景业务负载灵活弹性扩容。依托Serverless的极致弹性能力,实现30秒扩容超2万核,微博热点事件平稳运行,帮助微博轻松应对全年50+次的突发流量浪涌。另外,CCE和CCI支撑深势科技打造了分布式多云调度平台,CCI作为Serverless容器服务,资源秒级开通、按需使用、降成本;长稳业务运行在CCE节点,批量计算任务运行在CCI,实现整体成本最优。成功案例:百果园基于CCI实现流量灵活治理,业务极速弹性深圳百果园实业(集团)技术总监付春分享了“百果园基于CCI实现流量灵活治理,业务极速弹性”的主题演讲。基于Serverless容器落地DevOps平台,实现微服务架构统一治理,开发效率提升30%,成本优化20%。华为云CCI是大规模高性能云原生Serverless容器资源底座,具备极致弹性、多元算力、按需计费、灵活弹性策略的特点;另外CCI支持对接CCE集群内安装的开源Istio插件,通过Istio控制面下发的流量治理策略,实现运行在CCE和CCI上的Pod业务流量统一治理;再基于华为云容器落地DevOps平台,通过UCS实现多云统一管理,百果园希望实现Business&DevOps&FinOps的模式。方国伟认为Serverless 技术将朝着更通用的方向发展,极大简化云计算的编程模型,让开发者无需再关注资源申请、环境搭建、负载均衡、扩缩容等服务器相关的底层操作,只要聚焦核心业务上层应用逻辑的开发创新与实现,这也为企业降本提质增效、数字化转型和应用现代化创造了无限可能。转自华为云开发者联盟
-
华为云Serverless最全参会攻略带您开启Serverless奇妙之旅!华为开发者大会2023 ( Cloud )倒计时4天!形式多高端峰会、专题论坛、扫地僧见面会、展览展示、CodeLabs训练营,从趋势到概念,从理论到实践,从“用耳听”到“用手写”,从观众席到讲台,一站式全流程体验Serverless技术。大咖多华为资深架构师、产品专家、技术专家畅谈函数计算、边缘函数计算、冷启动等热门话题。干货多华为内外部用户分享业务Serverless化最佳实践,同行业用户关注的“怎么做的”、“有什么效果”等话题首次揭秘。礼品多观看《全域Serverless化,引领下一代云计算新范式》现场直播抽取华为云定制礼品。扫描下方海报二维码或点击文末“阅读原文”预约现场直播!7月8日-9日,华为欧洲小镇溪村,带您开启Serverless奇妙之旅!
-
Serverless被业界称为云计算的下一个10年,“Serverless 简化了云计算的编程,其代表了程序员生产力的又一次的变革,如编程语言从汇编时代演变为高级语言时代。本体验营将带你了解无服务计算概念,学会如何基于Severless技术构建可用于个人学习以及生产开发的个人网站,一站式高效体验华为的云端应用开发!>> 点击快速报名活动<<
-
有两种方法收集服务构建器相关日志,选择一种即可(一种不行换另一种):一、通过ManageOne运维面统一日志收集日志1、登录ManageOne运维面2、点击日常运维->统一日志->运维日志3、点击管理侧运行日志->新增日志下载任务4、收集movappservice日志:输入任务名称,选择自定义,选择收集日志的时间段。一次点击ManageOne->MOVAPPService->/var/log/oss/* /MOVAPPService/movappservice-* /log/root*,点击确定,执行任务5、收集mortsservice日志:输入任务名称,选择自定义,选择收集日志的时间段。一次点击ManageOne->MORTSService,选择/var/log/oss/* /MORTSService/heat-engine* 和/var/log/oss/* /MORTSService/heat-api*,点击确定,执行任务6、确认任务执行成功,点击下载,下载日志二、通过ManageOne运维面autoops执行MO0009编排收集日志1、登录ManageOne运维面2、点击日常运维->自动作业3、如题依次点击,执行mo-0009编排,收集movappservice和mortsservice日志4、输入要收集日志的时间段,要覆盖问题发生的时间,比如要收集2022年2月17日17:00-2022年2月18日17:00的日志,如图中填写即可。点击执行,收集日志5、确认编排执行成功,点击下载结果,下载日志
推荐直播
-
华为AI技术发展与挑战:集成需求分析的实战指南
2024/11/26 周二 18:20-20:20
Alex 华为云学堂技术讲师
本期直播将综合讨论华为AI技术的发展现状,技术挑战,并深入探讨华为AI应用开发过程中的需求分析过程,从理论到实践帮助开发者快速掌握华为AI应用集成需求的框架和方法。
去报名 -
华为云DataArts+DWS助力企业数据治理一站式解决方案及应用实践
2024/11/27 周三 16:30-18:00
Walter.chi 华为云数据治理DTSE技术布道师
想知道数据治理项目中,数据主题域如何合理划分?数据标准及主数据标准如何制定?数仓分层模型如何合理规划?华为云DataArts+DWS助力企业数据治理项目一站式解决方案和应用实践告诉您答案!本期将从数据趋势、数据治理方案、数据治理规划及落地,案例分享四个方面来助力企业数据治理项目合理咨询规划及顺利实施。
去报名
热门标签