欧美激情一区二区_国产人与动zozo_野外性史欧美k8播放_XXXX18HD亚洲HD护士_日韩欧美亚欧在线视频

您好,歡迎來到中國(guó)企業(yè)庫(kù)   [請(qǐng)登陸]  [免費(fèi)注冊(cè)]
小程序  
APP  
微信公眾號(hào)  
手機(jī)版  
 [ 免責(zé)聲明 ]     [ 舉報(bào) ]
客服電話:13631151688
企業(yè)庫(kù)首頁(yè)>商務(wù)服務(wù)>教育培訓(xùn)>其他教育培訓(xùn) 我也要發(fā)布信息到此頁(yè)面
超級(jí)獵聘人才網(wǎng) 廣告
合肥淘寶開店培訓(xùn)班唯米記錄手機(jī)淘寶性能優(yōu)化
合肥淘寶開店培訓(xùn)班唯米記錄手機(jī)淘寶性能優(yōu)化

合肥淘寶開店培訓(xùn)班唯米記錄手機(jī)淘寶性能優(yōu)化

合肥淘寶開店培訓(xùn)班唯米記錄手機(jī)淘寶性能優(yōu)化 相關(guān)信息由 合肥唯米電腦培訓(xùn)中心提供。如需了解更詳細(xì)的 合肥淘寶開店培訓(xùn)班唯米記錄手機(jī)淘寶性能優(yōu)化 的信息,請(qǐng)點(diǎn)擊 http://www.nnfsds.com/b2b/weimi.html 查看 合肥唯米電腦培訓(xùn)中心 的詳細(xì)聯(lián)系方式。

[手機(jī)端查看]
沈老師(老師)
15209870589
立即咨詢
合肥唯米電腦培訓(xùn)中心
0551-68998880
合肥市瑤海區(qū)火車站浙江商貿(mào)城c座1911室和明珠廣場(chǎng)2個(gè)
275913236@qq.com
[店鋪小程序]

合肥唯米電腦培訓(xùn)中心


合肥淘寶培訓(xùn) 合肥淘寶網(wǎng)店培訓(xùn) 合肥淘寶開店培訓(xùn)  合肥開淘寶店培訓(xùn) 合肥電商學(xué)院,學(xué)習(xí)淘寶專業(yè)技術(shù)就選擇電商學(xué)院就是好??!聯(lián)系電話15209870589沈
詳細(xì)信息 我也要發(fā)布信息到此頁(yè)面

合肥淘寶開店培訓(xùn)班唯米記錄手機(jī)淘寶性能優(yōu)化

我們學(xué)校地址:合肥市火車站浙江商貿(mào)城C座1911和明珠廣場(chǎng)上海城市2培訓(xùn)學(xué)點(diǎn)
 
手      機(jī):15209870589 
  
Q       Q :275913236 
 
座      機(jī):0551-68998880 
聯(lián) 系 人:小沈老師 
http://
http://
http://./
http:///article/58808488.html
http:///school/vmio.shtml
http:///html/2013/74/201374214737589859.shtml
http:///course/2012/06/20120628093050628689.shtml

手機(jī)淘寶作為一個(gè)航母級(jí)的應(yīng)用,承載了100多個(gè)業(yè)務(wù)方,部分是H5的形式接入,還有超過50個(gè)Native的業(yè)務(wù)方。為了規(guī)避安卓DEX65535的方法數(shù)限制以及各業(yè)務(wù)獨(dú)立開發(fā)等需要,淘寶工程師門也是采用了多DEX(多Bundle)的開發(fā)形式,而且手淘作為一個(gè)以圖片顯示為重點(diǎn)的APP,在性能上不可避免的遇到了比較多的問題。

  10月22日在北京新云南hg假日酒店召開的2015中國(guó)系統(tǒng)架構(gòu)師大會(huì)上,手機(jī)淘寶技術(shù)專家王曜東(花名:雪鷺)為我們分享了《手機(jī)淘寶性能優(yōu)化》,引起了2500名與會(huì)者的極大關(guān)注。

  手機(jī)淘寶遇到了那些性能問題?淘寶技術(shù)專家使用那些優(yōu)化分析工具找出各種性能瓶頸的?在應(yīng)用界面到中間件的優(yōu)化過程中,淘寶又有那些經(jīng)驗(yàn)與我們分享?你不在現(xiàn)場(chǎng)?沒關(guān)系,王曜東演講的技術(shù)要點(diǎn)就在這里。

  手機(jī)淘寶遭遇的5大性能問題

  1、APP啟動(dòng)慢

  2、界面跳轉(zhuǎn)慢

  3、事件相應(yīng)慢

  4、滑動(dòng)和動(dòng)畫卡頓

  5、展現(xiàn)內(nèi)容慢

  手機(jī)淘寶的目前使用的主要優(yōu)化工具

  開發(fā)者選項(xiàng)中和Android提供了多個(gè)分析工具。

  GPU Profile:查看每一幀的繪制情況。除了查看幀率,我還會(huì)用這個(gè)工具檢查各個(gè)界面在靜默狀態(tài)下的不必要的刷新問題。

  Show GPU Overdraw:查看過渡繪制用的工具,因?yàn)槭痔缘暮芏嘟缑嫘Ч脖容^復(fù)雜,很容易出現(xiàn)過渡繪制。

  Dump View Hierarchy:用于查看界面的布局、View和層級(jí)嵌套情況。特別是在沒有源代碼的情況下,查看非常方便。

  TraceView:強(qiáng)大的性能跟蹤工具,也是我們?cè)趦?yōu)化中用的最多的工具。

  SysTrace:主要用于查看UI的繪制問題,跟蹤CPU執(zhí)行情況等。

  Trace OpenGL:可以錄制每一幀的繪制過程,逐個(gè)繪制命令查看。

  AlloCation Tracker:內(nèi)存分配跟蹤,也是個(gè)調(diào)試性能的強(qiáng)大工具。

  Threads 工具可以顯示所有線程信息及查看線程正在執(zhí)行的代碼。

  Heap和Memory Monitor:查看內(nèi)存的分配和變化情況。Memory Monitor還可以查看內(nèi)存的抖動(dòng)和GC情況。

  而TraceView作為最主要的工具,王曜東特別強(qiáng)調(diào)了手淘在優(yōu)化過程中的一些經(jīng)驗(yàn)。比如找出高頻率調(diào)用函數(shù)有時(shí)候會(huì)比較特殊,要結(jié)合實(shí)際代碼,比如寫SharedPreferences的apply函數(shù)需要注意,因?yàn)镃ommit函數(shù)會(huì)阻塞IO,這個(gè)函數(shù)雖然執(zhí)行很快,但是系統(tǒng)會(huì)有另外一個(gè)線程來負(fù)責(zé)寫操作,當(dāng)apply頻率高的時(shí)候,該線程就會(huì)比較占用CPU資源。類似的還有統(tǒng)計(jì)埋點(diǎn)等,在主線程埋點(diǎn)但異步線程提交,頻率高的情況也會(huì)出現(xiàn)這樣的問題。

  其次查看布局性能,一種是直接查看,如onMeasure,OnLayout函數(shù)占用的百分比和平均執(zhí)行時(shí)間過高導(dǎo)致的性能問題,很直觀就可以看出來。還有就是例如getview中的布局性能,整體的查看inflate的個(gè)數(shù)和耗時(shí)問題的跟蹤。還有一種是通過View的draw函數(shù)或者buildeDisplayList函數(shù)的調(diào)用和遞歸調(diào)用次數(shù)來判斷布局的復(fù)雜度。

  關(guān)于復(fù)用問題,比如在listview滑動(dòng)過一遍后,在對(duì)這部分區(qū)域做跟蹤,如果getview中還有infalte布局,那就是復(fù)用還有可以優(yōu)化的地方。

  類的初始化耗時(shí),像構(gòu)造函數(shù),靜態(tài)初始化等這些問題很容易忽視,但是在性能優(yōu)化的后期,這些小的細(xì)節(jié)點(diǎn),也是優(yōu)化的方向,特別是在主線程中調(diào)用的時(shí)候。

  手淘啟動(dòng)過程優(yōu)化詳解

  啟動(dòng)過程優(yōu)化是所有大型APP都會(huì)遇到的問題,啟動(dòng)慢,加載多。手淘也不例外,手淘的模塊非常多,各業(yè)務(wù)方都希望在啟動(dòng)的時(shí)候都能把自己先初始化起來,加上手淘也是分了很多了dex文件的,這樣在首次啟動(dòng)的時(shí)候不僅要dexpot這些模塊的dex,還有主dex中的不少模塊有初始化動(dòng)作。

  1、分析各個(gè)模塊的線程數(shù)量,檢查線程池的合理性。通過去掉不必要的線程和線程池,再控制線程池的并發(fā)數(shù)。減少啟動(dòng)階段的線程以及控制線程的啟動(dòng)時(shí)機(jī)。

  2、通過MAT等工具,找出那些分配過多的對(duì)象和數(shù)量特別多的對(duì)象,我們前面看到很多的容器,其實(shí)大部分都用不到,不需要在啟動(dòng)時(shí)就創(chuàng)建。淘寶工程師也發(fā)現(xiàn)首頁(yè)緩存的布局太多,浪費(fèi)較多的資源,所以需要減少緩存的數(shù)量。通過Systrace,可以發(fā)現(xiàn)在網(wǎng)絡(luò)線程,統(tǒng)計(jì),主線程等GC很多,所以對(duì)頻繁創(chuàng)建的對(duì)象如網(wǎng)絡(luò)庫(kù)的Byte數(shù)組,Buffer等做復(fù)用。

  3、當(dāng)有較多的主線程耗時(shí),需要將主線程中的耗時(shí)操作都異步處理或者移除。

  4、IO:通過TraceView可以發(fā)現(xiàn)SharedPreference有2個(gè)線程經(jīng)常占用很多的CPU時(shí)間,還有幾個(gè)下載文件的線程如update等以及數(shù)據(jù)庫(kù)操作這些都是IO操作。優(yōu)化過程就是刪除不必要的io操作,有些做延后處理。例如統(tǒng)計(jì)數(shù)據(jù),淘寶減少了采樣的頻率,并且增加緩存數(shù)量,以空間換時(shí)間,減少數(shù)據(jù)庫(kù)和SharedPreference的讀寫。在做較多數(shù)據(jù)庫(kù)操作的時(shí)候也會(huì)開啟事務(wù)功能來減少IO的次數(shù)。

  5、以前在啟動(dòng)階段會(huì)安裝主要模塊的bundle,首頁(yè)再啟動(dòng)后過3秒也會(huì)發(fā)送通知來喚起更多的模塊,像淘寶的webview框架,在初始化的時(shí)候會(huì)把線上活動(dòng)資源都緩存到本地,這個(gè)過程設(shè)計(jì)到j(luò)son的解析,下載和解壓縮等,非常耗資源等等,這些模塊疊加在一起就導(dǎo)致了首頁(yè)就會(huì)直接卡主及白屏很長(zhǎng)一段時(shí)間,所以對(duì)這一種模塊改為懶加載,并且要限制拉取活動(dòng)的數(shù)量。還有像購(gòu)物車,微淘,店鋪,旺信等以前是首次啟動(dòng)會(huì)安裝,也是改為懶加載。因?yàn)槭状蜠exopt會(huì)比較費(fèi)時(shí),特別是安卓5.0以后,所以很多模塊都改為懶加載,這樣首次使用該模塊的時(shí)候變慢一點(diǎn),但是整體啟動(dòng)速度一下就提升了。

  6、降級(jí)搖一搖功能的檢測(cè)頻率,減少地理信息的數(shù)量

  7、首頁(yè)在歡迎頁(yè)的時(shí)候開始初始化布局等,加快展示。退出的時(shí)候以前都是銷毀Activity的,為了加快下次啟動(dòng),釋放到圖片等主要資源,Activity不做銷毀。

  手機(jī)淘寶各界面的優(yōu)化

  GPU過渡繪制的優(yōu)化

  不需要顯示的布局及時(shí)隱藏

  去掉層疊布局中多余的背景設(shè)置

  圖片控件有前景內(nèi)容的時(shí)候不顯示背景

  界面背景定義到Activity的主題中

  減少Drawable的復(fù)雜Shape使用

  自定義控件onDraw函數(shù)減少繪制層次

  自定義控件使用canvas.clipRect

  優(yōu)化布局性能

  優(yōu)化層級(jí)

  靈活使用布局

  減少View數(shù)量

  異步infalte或者提前infalte

  自己做控件的回收復(fù)用

  加快界面顯示

  主線程不做耗時(shí)操作

  減少主線程GC停頓

  利用本地緩存

  減少數(shù)據(jù)傳輸和解析時(shí)間

  注意線程優(yōu)先級(jí)

  利用局部刷新

  總結(jié):

  1、發(fā)現(xiàn)性能問題的時(shí)候首先要分析原因,是卡住還是卡頓,是網(wǎng)絡(luò)慢的問題,還是是內(nèi)存問題亦或是其他系統(tǒng)的問題。手淘遇到有時(shí)候手機(jī)廠商的一些特殊控件的bug也會(huì)導(dǎo)致問題。安卓系統(tǒng)本身的內(nèi)存管理和一些監(jiān)控軟件有時(shí)候也會(huì)導(dǎo)致性能問題。

  2、通過多種工具額配合找出問題。

  3、有些問題,一個(gè)地方存在很可能其他地方也有,可以到類似的模塊去查看,如圓形的圖案,輸入控件在輸入法退出時(shí)引發(fā)的自動(dòng)刷新問題。

  4、建立程序內(nèi)的監(jiān)控,以及代碼層面的掃描等,手淘自己的代碼平臺(tái)有一些性能的掃描,但還不夠完善,手淘APP內(nèi)部也有性能監(jiān)控的模塊可以實(shí)時(shí)監(jiān)控和統(tǒng)計(jì)程序中的性能問題。

  5、冰凍三尺非一日之寒。代碼掃描和監(jiān)控等本身都有一定的局限性,而且監(jiān)控本身就會(huì)導(dǎo)致一定的性能損耗。所以一個(gè)性能好的APP應(yīng)該防患于未然,從源頭抓起,只有開發(fā)人員都對(duì)Java和Android相關(guān)的性能相當(dāng)熟悉,在開發(fā)的時(shí)候處處考慮到性能和內(nèi)存問題,追求{zy1},才能防微杜漸,這也是手機(jī)淘寶接下來努力的方向之一。

  優(yōu)化是沒有止境的,雖然通過這幾個(gè)月的優(yōu)化,手淘在內(nèi)存使用上下降了接近50%,平均幀率提高了近20%,首頁(yè)的GC減少了90%。但是在低內(nèi)存,低性能的手機(jī)上,手淘還是面臨很多的挑戰(zhàn),需要不斷的去優(yōu)化,也需要從源頭上就把性能這塊提升。


鄭重聲明:產(chǎn)品 【合肥淘寶開店培訓(xùn)班唯米記錄手機(jī)淘寶性能優(yōu)化】由 合肥唯米電腦培訓(xùn)中心 發(fā)布,版權(quán)歸原作者及其所在單位,其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)(企業(yè)庫(kù)www.nnfsds.com)證實(shí),請(qǐng)讀者僅作參考,并請(qǐng)自行核實(shí)相關(guān)內(nèi)容。若本文有侵犯到您的版權(quán), 請(qǐng)你提供相關(guān)證明及申請(qǐng)并與我們聯(lián)系(qiyeku # qq.com)或【在線投訴】,我們審核后將會(huì)盡快處理。
會(huì)員咨詢QQ群:902340051 入群驗(yàn)證:企業(yè)庫(kù)會(huì)員咨詢.
類似產(chǎn)品