天天看点

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

作者:斗米仓

2022年11月4日,“鸿蒙七大赋能套件”在华为HDC大会上正式发布,堪称是鸿蒙生态新的里程碑。从2019年华为正式发布HarmonyOS 1.0开始,经过三年多的快速发展,搭载HarmonyOS的设备超过了上亿台,广大的开发者也正致力于HarmonyOS应用的开发中,可见HarmonyOS应用生态的蓬勃生气。

今天,我们就来聊聊,持续成长的鸿蒙生态,如何提升广大开发者的应用构建能力。

众所周知,开发一款应用程序所需的前后端开发人力,通常最少需要配备两名以上实战经验丰富的开发人员才能满足,同时后端开发人员还需要具备能够安全处理、运维、扩容数据库、服务器等的能力。就算满足相关人力,服务器的购买和运维成本同样是一笔不小的投入。

除了上述成本,时间成本一般与团队规模和业务场景的复杂度成正比,前后端采用的语言不同、业务数据的复杂度、前端展示的效果、多设备之间是否需要采用适配方案等,都会影响一款应用的时间成本。

对于广大HarmonyOS应用开发的开发者来说,能快速开发出一款优秀作品并发布上线,同时又不需要投入太多成本是一大诉求。然而开发一款应用程序,无论是人力成本、服务器相关成本,还是时间成本都是相当可观的,但对于一些个人开发者或者需要快速抢占市场的极具创意的作品来说,快速开发、极少的服务器资源投入及少量的人员成本又是非常重要的关注点。

为了解决开发者关注的开发效率和开发成本问题,华为开发者联盟为应用开发者提供了DevEco Studio+Serverless的端云一体解决方案。DevEco Studio开发平台的IDE工具可以帮助开发者快速构建应用前端部分,的Serverless服务可以帮助开发者快速构建应用的后端部分,HUAWEI AppGallery Connect Serverless还可以解决应用中的数据存储和云服务器托管等问题。

1.为什么需要端云一体化架构

在华为开发者大会2022(HDC)的“一站式开发者服务及开放能力”分论坛上,华为终端云服务Serverless高级技术总监详细的介绍了华为端云协调和传统的端云开发的模式区别。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

传统端云开发前后端开发割裂,业务逻辑实现效率低,成本高。如传统端云开发中,前端和后端至少2个开发团队才能实现业务逻辑,团队之间的沟通成本非常高;同时前端和后端的开发人员由于使用的语言不同,因此编程IDE也不相同,这同样造成开发和联调效率低下。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

采用华为端云一体化架构后,端侧开发人员也可以轻松实现云端的能力,前后端开发融合更加紧密,从而大大提高了开发效率和人员沟通成本。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

2.端云一体架构的价值

采用华为端云一体的架构,可以低成本、极简、高效率构建HarmonyOS应用。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

对于开发者来说,使用华为端云一体架构的价值,充分体现在以下的几个方面:

(1) 一套开发工具(DevEco Studio)实现前后端逻辑

使用强大的DevEco Studio IDE,开发者可以在DevEco Studo中同时创建和管理前端工程和对应的后端Severless工程,这样极大的方便前端与后端的同步代码编写、编译和调试,云端采用华为自研的Serverless解决方案。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

(2) 更加精简的开发团队

通过华为端云一体化架构,一个全栈开发团队就可以完成端云的高效协调开发,和传统的端云开发比较,端云一体模式在人力及沟通成本上提升约50%。

(3) 运维成本大大降低

Serverless的云托管服务可以通过流水线对接云托管API,即可以实现网页自动部署,无需额外人力投入。云托管提供CDN加速能力,通过丰富的CDN节点,实现网页在全球范围内的流畅访问。除了给每个托管的网页站点提供CDN加速能力之外,还提供CA证书,通过内置的证书实现Https协议安全接入。这样开发者只需聚焦界面交互、页面样式和业务逻辑,无需关注证书管理等安全配置,也不需要关注页面分发,就可以构建高安全、快速访问的网页。

(4) 通过云函数,可实现弹性伸缩,成本大大降低

我们通常需要在应用中提供图片/视频的上传、下载和存储等操作功能。当图片或视频数量很多、尺寸很大时,存储、压缩等都需要占用大量的服务器资源,这也意味着大量的成本投入。

但如果在App中集成Serverless的云函数、云存储服务,用户上传图片或视频到云存储的存储实例中时,就可以触发配置的云函数来完成原始图片的下载、缩略图的生成与上传等动作。云函数根据图片/视频的流量对函数实例进行弹性伸缩,无流量时函数实例数可缩至零,只需按实际使用量付费,资源成本可降低约75%。

对于一个企业开发者来说,使用华为开发者联盟提供的端云一体的解决方案后,总的的体会是为我们企业节省了大量项目成本,这包括人力资源成本和服务器托管运维成本以及项目周期成本。同时我们的客户都也因此收益,快速的项目周期让客户更容易在项目初期更快的抢占市场,从而获得商业上的成功。

3.华为开发者联盟提供的Serverless独特服务优势

与其他厂商提供的Serverless解决方案相比,提供的Serverless服务具备如下几个方面的优势:

(1)优势1:有状态函数

当前Serverless最大的挑战之一是云函数是无状态的,状态数据需要通过外挂租户的DCS服务,因此涉及到服务开通、VPC网络打通、ACL安全策略配置、通信时延增加等。

华为Serverless引入了两项关键技术:

① 多语义数据

基于统一底座,提供对象、stream基础语义,并扩展支持类redis语义、Tabular数据格式等多种语义,实现计算过程数据在分布式内存中免序列化高效流转。

② 近计算两级缓存

一级缓存数据locality:近计算函数亲和,共享内存本地数据免拷贝,实现数据访问内存级访问性能,读写时延从毫秒级到微秒级。

二级缓存:提供数据可靠性以及容量扩展能力。

华为Serverless实现以内存为中心的近计算Serverless数据系统,让数据流转达到极致的性能。

(2)优势2:冷启动优化

当前Serverless面临的挑战二是:业务中存在大量微服务的应用,类型应用往往启动依赖多,加载配置慢,初始化过程长,导致冷启动时间往往达到分钟级。

华为Serverless引入了下面三项关键技术,解决了冷启动耗时问题:

① CRIU方案

该方案适用于无状态函数场景,优化后效果性能提升90%+。

② 基于预测的预热+实例保活

该方案适用于通用场景,优化后效果性能提升80%。

③ 静态编译AOT技术

该方案适用于闭包,限制反射等场景,优化后性能提升50%。

(3)优势3:微服务与函数低成本互通

当前Serverless面临的挑战三是微服务和函数如何自动发现对方,如何统一调度和治理,最大程度兼容原有的微服务体系。

华为Serverless通过新构建HTTP函数,实现支持原生的HTTP Server能力,通过Proxy构建服务发现、负载均衡、熔断降级等相关治理能力。

通过华为Serverless提供的这三项优势,可以帮助广大开发者进一步优化云端一体的解决方案,实现项目的收益最大化。

4.华为开发者联盟的Serverless五大项技术能力

华为开发者联盟的Serverless为开发者提供了认证服务、云函数、云数据库、云存储、云托管和Serverless模板等构建能力,可以帮开发者统一构建自动弹性伸缩的后端服务,具有跨平台、上线快、低成本、免运维等特点。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

5.端云一体化案例分享

案例一,端侧网关,实现日调量高达27亿,且流量接口存在明显的波峰低谷。通过Serverless改造后,实现资源成本降低约90%,CUP使用率提高25%,冷启动时延降低约95%,能够无损扛住5w+的峰值流量。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

案例二,基于Serverless模板进行开发,通过Severless模板,可以灵活应对各种常见的需求开发。Serverless目前提供了7大模板,是Serverless服务+各种行业场景组合的易用高价值微解决方案。如通过中奖模板,可以在短短几个小时内集成开发完成中奖功能,服务器成本降低75%左右。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

6.学习收益

最后,从一个开发者的角度总结一下通过华为开发者联盟的Serverless端云一体化解决方案所获得的收益:在项目开发效率上,我们获得了70%~80%提升;在运维成本上,综合成本降低了80%;资源成本上更是降低了90%。

华为开发者联盟Severless解决方案为鸿蒙生态构建发力

现在,有了华为开发者联盟的,开发者只需聚焦核心业务代码的开发,不需要关注底层资源的管理和运维,从而大幅提升App的开发和上线速度。从开发维度来说,“端云一体化开发”在本次HDC上重磅发布,在未来HarmonyOS应用开发,将变得更加有趣和充满想象。

继续阅读