性能調(diào)優(yōu)貫穿于鴻蒙應(yīng)用開發(fā)的整個生命周期中,開發(fā)前有性能最佳指南等賦能套件讓你快速上手學(xué)習(xí),開發(fā)過程中有性能工具開發(fā)套件覆蓋應(yīng)用開發(fā)各階段,應(yīng)用開發(fā)完成上架后有專業(yè)的性能測試工具檢查測試應(yīng)用性能指標(biāo)。本文重點介紹應(yīng)用開發(fā)過程中使用性能工具與性能優(yōu)化文章定位分析性能問題流程,目前DevEco Studio主要集成了四種性能工具,在不同的開發(fā)階段各有側(cè)重,主要分為性能問題檢測類工具和性能問題分析類工具。
性能工具集定位分析性能問題流程
體檢工具和代碼檢查工具聯(lián)動:針對共性問題觸發(fā)代碼白盒檢查,通過性能規(guī)則精確發(fā)現(xiàn)開發(fā)者開發(fā)過程中引入的性能問題,并給出具體的修改建議和范式。
體檢工具和調(diào)試&調(diào)優(yōu)工具聯(lián)動:部分不能通過具體規(guī)則攔截的性能問題,跳轉(zhuǎn)到調(diào)試&調(diào)優(yōu)工具進(jìn)行分析,分析并行化、組件耗時、頁面層次等具體問題。
1. 檢測發(fā)現(xiàn)性能問題,在代碼編輯階段可以使用Code Linter代碼檢查工具對代碼進(jìn)行單個文件或者文件夾進(jìn)行靜態(tài)代碼掃描;同時在應(yīng)用功能開發(fā)完成后,在運行態(tài)可以使用應(yīng)用體檢工具檢測應(yīng)用運行過程中的性能問題;
2. 以應(yīng)用體檢工具為主,對于動態(tài)運行檢測發(fā)現(xiàn)的性能問題,提供三種修復(fù)問題的路徑:
根據(jù)跳轉(zhuǎn)的官網(wǎng)性能指導(dǎo)來修改發(fā)現(xiàn)的性能問題;
根據(jù)檢測結(jié)果的問題頁面,觸發(fā)該頁面源文件的Code Linter靜態(tài)性能檢查,根據(jù)靜態(tài)檢查結(jié)果跳轉(zhuǎn)到官方最佳性能實踐指導(dǎo)修復(fù)性能問題;
根據(jù)檢測結(jié)果的過程性能文件,跳轉(zhuǎn)到DevEco Profiler導(dǎo)入該文件深入分析,定位發(fā)現(xiàn)性能瓶頸點;
解決應(yīng)用性能問題的策略
構(gòu)建以體檢工具為主,調(diào)優(yōu)工具為輔的性能工具集,通過應(yīng)用體檢發(fā)現(xiàn)問題并給出修復(fù)建議。
滑動卡頓丟幀和時延類問題
1. 有檢查規(guī)則覆蓋的問題
應(yīng)用體檢工具的Benchmark體檢套餐目前集成了通用性能檢測項和最佳性能實踐檢測規(guī)則,對于性能規(guī)則能覆蓋的滑動卡頓丟幀和時延類性能問題,這類問題的定位思路如下:
打開應(yīng)用體檢工具,準(zhǔn)備好調(diào)測軟件包,選擇Benchmark體檢套餐,自定義選擇性能檢查測試項,點擊開始執(zhí)行應(yīng)用體檢;
執(zhí)行檢測過程分為自動檢測和手動檢測,自動檢測完成后會提示用戶手動操作應(yīng)用。應(yīng)用體檢工具會自動分析發(fā)現(xiàn)應(yīng)用執(zhí)行過程中的性能問題,將檢測結(jié)果呈現(xiàn)給用戶,用戶重點關(guān)注未通過項;
查看未通過項詳情,對于性能規(guī)則能覆蓋的性能問題,可首先查看性能指導(dǎo)嘗試修復(fù)問題,也可觸發(fā)問題頁面源碼文件的Code Linter靜態(tài)性能檢查,根據(jù)靜態(tài)檢測結(jié)果呈現(xiàn)的具體錯誤和最佳性能實踐修復(fù)問題。
2. 無檢查規(guī)則覆蓋的問題
對于性能規(guī)則不能覆蓋的滑動卡頓丟幀和時延類性能問題,這類問題的定位思路如下:
打開應(yīng)用體檢工具,準(zhǔn)備好調(diào)測軟件包,選擇Benchmark體檢套餐,自定義選擇性能檢查測試項,點擊開始執(zhí)行應(yīng)用體檢;
執(zhí)行檢測過程分為自動檢測和手動檢測,自動檢測完成后會提示用戶手動操作應(yīng)用。應(yīng)用體檢工具會自動分析發(fā)現(xiàn)應(yīng)用執(zhí)行過程中的性能問題,將檢測結(jié)果呈現(xiàn)給用戶,用戶重點關(guān)注未通過項;
查看未通過項詳情,對于性能規(guī)則不能覆蓋的性能問題,可將檢測過程中生成的trace文件或者perfdata文件導(dǎo)入到DevEco Profiler工具,深入分析代碼的性能瓶頸點,修復(fù)性能問題。
內(nèi)存類問題
對于應(yīng)用的內(nèi)存類問題定位思路如下:
1. 打開應(yīng)用體檢工具,準(zhǔn)備好調(diào)測軟件包,選擇Benchmark體檢套餐,自定義選擇內(nèi)存相關(guān)性能檢測項,點擊開始執(zhí)行應(yīng)用體檢;
2. 執(zhí)行檢測過程分為自動檢測和手動檢測,自動檢測完成后會提示用戶手動操作應(yīng)用。應(yīng)用體檢工具會自動分析發(fā)現(xiàn)應(yīng)用執(zhí)行過程中的性能問題,將檢測結(jié)果呈現(xiàn)給用戶,用戶重點關(guān)注未通過項;
3. 查看未通過項詳情,可將檢測過程中生成的snapshot文件導(dǎo)入到DevEco Profiler工具,深入分析代碼的性能瓶頸點,修復(fù)內(nèi)存問題。
-
代碼
+關(guān)注
關(guān)注
30文章
4899瀏覽量
70623 -
性能
+關(guān)注
關(guān)注
0文章
276瀏覽量
19367 -
應(yīng)用開發(fā)
+關(guān)注
關(guān)注
0文章
63瀏覽量
9725
原文標(biāo)題:性能最佳實踐導(dǎo)讀
文章出處:【微信號:HarmonyOS_Dev,微信公眾號:HarmonyOS開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
鴻蒙5開發(fā)寶藏案例分享---應(yīng)用性能優(yōu)化指南
評估通過Python快速開發(fā)異構(gòu)處理器FPGA應(yīng)用性能(PYNQ評測)
具有特殊應(yīng)用性能的模擬開關(guān)有什么優(yōu)點
WLAN優(yōu)化調(diào)整需要注意哪些因素?
高性能永磁交流伺服電機系統(tǒng)控制策略資料分享
新IGBT技術(shù)提高應(yīng)用性能

常見流媒體服務(wù)器應(yīng)用性能比較
恒憶創(chuàng)新多位配置串口NOR閃存加速嵌入式應(yīng)用性能
怎樣通過DPDK GRO和GSO來提高網(wǎng)絡(luò)的應(yīng)用性能?

HarmonyOS下如何測試應(yīng)用性能
A-Ops數(shù)據(jù)庫場景在線應(yīng)用性能診斷案例
使用32Gb/S光纖通道實現(xiàn)更快的應(yīng)用性能

使用Arthas火焰圖工具的Java應(yīng)用性能分析和優(yōu)化經(jīng)驗

評論