

本篇主要详细介绍3倍以上提升,高德地图终极性能优化之路的题和一些高德车机版性能消耗相关的话题,希望对大家是有所帮助的!
一、简介
随着移动互联网的成熟,移动应用技术趋于多元化,商业趋势趋于搭建和超级门户,超级应用根据时代需要不断涌现。但业务的快速扩张和有限的系统资源不可避免地会产生冲突,如何做到更多、更快、更好、更经济,让大象能跳舞,成为摆在超级应用面前必须解决的课题。
随着近年来高德地图APP的快速发展,我们也面临着这些题。2019年以来,我们启动了一系列性能优化项目,对高德地图APP进行了深入的性能分析和极限优化,取得了显着的成果。结果.效果.一路走来,我们总结了一系列的优化思路和技术方案,希望对面临超级应用性能题的朋友有所帮助。
经过一系列的优化操作,在启动、核心链路交互、内联内存、数据包大小等方面都实现了指数级的性能提升,特别是在低端系统中,作为保证业务需求正常重复添加的基础。实现了超过3倍的改进,在多个维度改善了用户性能体验。
启动攻击启动时间减少70%,地图元素在2秒出现,控制保持稳定低位,趋势向下。
优化关键链接交互搜索、路径等链接可秒级打开中端机型,2秒打开低端机型,提升用户整体流畅的交互体验。
内联内存优化所有模型均经过约30%的优化,以提高稳定性。
攻击包大小减少20%的重复量并提高安装转化率。
2性能优化业务背景
一段时间以来,高德地图APP面临性能不佳、管控困难等题。以启动时间为例,双端初创公司的等待时间是自然的,历史上即使治理后也曾出现过反复出现的情况,总体趋势是向上的。诸如以下方面
巨大的生意
超级应用程序通常都会经历这个开发过程。首先,您的应用程序为用户服务,您的用户开始增长,不断增长的用户创造更多需求。应用不断迭代以满足新的需求并提供新的服务。新服务进一步推动用户增长并进入下一个周期。正是在这些积极的发展周期中,应用程序像滚雪一样越滚越大,最终成为超级应用程序。
然而,随着业务需求的不断增长,业务规模和复杂性也随之增加,占用越来越多的系统资源。但机器资源有限,资源竞争必然导致性能题,影响用户体验和业务拓展,成为超级应用循环发展的障碍。
高德地图也经历了这个过程,并且近年来快速发展,应用从手机扩展到汽车,从iOS、Android扩展到Windows、Liunx,不断提供10余种出行方式。我们提供团队建设、视频、语音、AR等新服务。这导致单个退出代码超过一百万行、数百个线程和数千个任务,从而造成持续的性能压力。
复杂环境
性能题面临的另一个重大挑战是超级应用的复杂环境。同时,随着移动设备的长期发展,系统碎片化日益严重,Android系统由11个大版本组成,iOS有14个大版本。这进一步增加了系统的碎片化,同时使得用户的移动设备体验非常不稳定。功耗、温度的变化以及其他应用的抢占等都会导致内存、CPU、内存等资源波动。图形处理器。复杂且不可控的环境给维持一致的性能体验带来了重大挑战。
然而,作为一个拥有庞大用户群的超级应用,在任何环境下都必须保证体验。尤其是在地图领域,用户习惯于直接比较不同的产品,任何环境下的性能体验题都直接影响产品的整体口碑并导致用户流失。因此,必须考虑到所有环境,不仅要主流模型系统和场景,还要保证长尾场景和模型系统运行流畅,这就需要一头不仅在舞台上跳舞、在椅子上跳舞的超级应用大象。您甚至可以在水中跳舞。
长技术链接
为了满足提高研发效率和产品动态等多方面需求,移动应用技术不仅要支持原生开发,还要支持跨、容器化和动态开发,例如小程序、WebH5和C原生库。从高德APP的角度来看,除了OC和Java之外,我们还支持顶级业务的JS开发。支持层提供AJX、Applet、Native、C等各种容器框架,同时还包括JS、JNI等桥接层。底层使用C++提供地图引擎功能,包括OpenGL、定位传感器融合等基础功能。从上到下的技术环节变得漫长而复杂,其中的每一个环节都可能导致性能题。原有的单一描述语言的故障排除工具已经无法发现并清晰识别性能不佳的模块,因此要承担性能故障排除和管理的挑战。
三大解决方案低成本优化迁移、长期管控
基于以上题,原有的单一优化方案显然无法解决复杂环境下日益增长的需求和一致的性能体验。因此,在专门的实践课程中,我们开发了自适应资源调度框架,在不影响现有研发开发效率的情况下,以低成本优化迁移,实现新业务的高性能,同时解决历史性能题。此外,从系统底层开始实施全方位的资源监控,自动发现分布题,实现长期控制,避免初期治理情况反弹。
自适应资源调度框架
自适应资源调度框架在应用程序运行时检测集合执行环境。然后针对不同的环境状态做出不同的调度决策,生成相应的性能优化策略,最后根据优化策略执行相应的优化函数。同时,监控调度上下文和调度策略执行有效性,并将其反馈给调度决策系统,为进一步的决策和优化提供信息输入。这样,您就可以在各种操作环境中获得预期的性能体验。并且整个流程不需要额外进行业务开发,可以无缝对接,不影响业务开发效率。
•环保意识
感知环境分为四个维度硬件设备、业务场景、用户行为、系统状态。
对于硬件设备,集团实验室对已知设备进行评估和性能评分,确定高、中、低端型号,并对硬件进行实时评估。在您的设备本地。
从业务场景来看,业务分为前端展示、后台任务、交互任务等几类,一般来说,前台交互任务的业务场景优先级最高,后台数据预处理的业务场景优先级最高。最重要的。它的优先级最低。对于同一品类的业务场景,根据业务UV、交易量、资源消耗等维度进行PK,确定细分优先级。
在用户行为方面,我们结合服务用户画像和本地实时计算,确定用户特征偏好和操作习惯,为下一步为用户做出精准的优化决策做好准备。
在系统健康方面,它监控内存、线程、CPU和电源,同时提供内存警报、温度警报和睡眠模式等接口来识别系统的极端状态。实时了解系统性能资源。
•确定时间表
调度系统检测到环境状态后,结合各种状态和调度规则来做出业务和资源分配决策。
性能下降规则在低端设备上或当系统资源发出警报时,关闭耗能或低优先级的功能。
回避规则当高优先级函数运行时,回避低优先级函数。例如,用户单击搜索栏后,低优先级任务会在后台暂停,直到搜索结果完全显示。保证用户交互体验。
预处理规则根据用户行为和习惯进行预处理例如,如果用户通常在启动后3秒点击“搜索”,则用户的搜索结果将在3秒前预加载,为用户点击时提供的交互体验。
拥塞控制规则当设备资源不足时,主动减少资源申请量。例如,如果您的CPU很忙,请主动减少线程并发量。这将帮助您在高质量工作到达时避免出现题。缺乏资源,缺乏资源绩效经验。
•战略实施
4多媒体播放汽车支持多种媒体格式的播放,包括音乐、视频、照片等,还支持USB和SD卡读取。
5、语音控制功能汽车支持语音控制,可以通过语音指令控制音乐播放、导航、手机等功能,让驾驶员方便操作。
6应用程序下载汽车支持应用程序下载和安装,驾驶员可以自行下载各种实用的应用程序,如地图软件、音乐播放器、视频播放器、等。
以上是23款速腾15T超越版车型的通用使用说明。根据车辆版本的不同,可能会略有差异。具体使用说明请参阅车主手册。
Amap可以通过以下设置来降低性能消耗
1、关闭高德地图的实时路况实时路况功能在后台占用较多资源,因此关闭可以减少后台地图的性能消耗。在高德地图中,点击右下角“菜单”按钮,在弹出的菜单中找到“设置”选项,点击进入设置界面,在设置界面中找到“实时路况”选项。关闭该选项。
2地图显示质量下降高德地图默认显示的地图质量较高,对手机性能消耗较大,尤其是在高清屏手机上。用户可以通过调整地图显示质量来降低性能消耗。在高德地图中,点击右下角“菜单”按钮,在弹出的菜单中找到“设置”选项,点击进入设置界面,然后在设置界面中找到“显示质量”选项,选择“低”或“中”质量。等到它变低。
3优化地图更新频率高德地图默认在后台偶尔更新地图。如果用户需要降低性能消耗,可以调整地图更新频率。在高德地图中,点击右下角“菜单”按钮,在弹出的菜单中找到“设置”选项,点击进入设置界面,然后在设置界面中找到“地图更新频率”选项并缩放出去。更新频率。
以上设置会对高德地图部分地图功能产生特定影响,用户可以根据自己的具体需求和手机性能选择合适的设置。
发表评论