自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

你的微信有10萬+聯(lián)系人?重度用戶需求的極限挑戰(zhàn),微信接了!

原創(chuàng)
網絡
微信萬分之三的重度用戶帶給微信優(yōu)化團隊哪些挑戰(zhàn)?

【51CTO.com原創(chuàng)稿件】微信靠什么吸引了中國9億用戶?可能是它傳遞了一種新的生活方式,也可能是它的功能滿足了人們日常社交的大部分需求,也可能是它承載了豐富的第三方插件,但是所有的吸引力都離不開一個重要的元素——客戶端。因為客戶端是用戶接觸微信的***步,是否有卡頓、是否占太多內存,有沒有頻繁閃退、啟動時間久不久等等因素,都會影響微信的使用體驗,也決定了用戶是否會成為微信“死忠粉”。

  那么,完善好了這一切,就足夠了嗎?當然不是。因為微信還有1%~2%的重度用戶,他們的需求才是對微信優(yōu)化團隊的“極限挑戰(zhàn)”。記者日前在由聽云主辦的2017中國應用性能管理大會現場,采訪了微信客戶端開發(fā)團隊負責人陳岳偉,他與記者分享了“微信重度用戶體驗的優(yōu)化之道”。

[[201199]]

  重度用戶需求挑戰(zhàn)優(yōu)化極限

  陳岳偉介紹到,重度用戶是相對海量用戶提出的概念,專指針對某個特別的個案用戶。那么這些重度用戶的微信使用和普通用戶有何不同呢?陳岳偉告訴記者,這些重度用戶的微信聯(lián)系人名單里往往擁有10萬+以上的聯(lián)系人,基本每天在線時長超過3個小時,每天都會接收超過5萬條消息。

  從2016年年初開始,陸續(xù)有重度用戶向微信團隊反饋一個問題:在使用微信過程中,突然聊天記錄和聯(lián)系人都變成空白,即使使用微信修復工具也無法恢復,而這種問題的原因就在于用戶的本地數據量過大,加之消息收發(fā)頻繁,導致數據庫損壞。

  另外,閃退問題也曾經令微信優(yōu)化團隊非常頭痛。有些用戶反饋啟動微信一兩分鐘后,微信就閃退了,聊天記錄和聊天功能都不能使用,其實導致這個現象的直接原因就是內存占用過多。陳岳偉表示,過去最初的微信用戶好友數量均不多,所以微信團隊技術方案設計比較簡單,將所有聯(lián)系人都緩存在內存里,就這導致聯(lián)系人數量超過10萬以上的重度用戶被占用太多內存,影響微信正常使用。

  除此之外,微信重度用戶由于臨時會話太多,手機本地存儲消息量過大,也會導致微信卡頓或閃退。

  為了讓那萬分之三的人點贊

  記者了解到,以閃退問題為例,此類重度用戶的日活躍數量大概在5 萬名左右,只占微信總用戶數的萬分之三左右,那么如此低的占比,為什么還要花大精力去優(yōu)化呢?在記者看來這完全是得不償失的事情。

  陳岳偉解釋道,重度用戶的數量并不是判斷是否值得優(yōu)化的唯一標準,對微信優(yōu)化團隊而言,他們有自己的評判標準,例如用戶可不可以很好地使用微信,是不是每天都會遇到同樣的問題,如果微信在這類人群處于完全不可用狀態(tài),并且這些問題一直在持續(xù)增長,那么壞的影響力有可能不斷擴大,那就必須去著手解決。

  爆內存是如何解決的?

  解決應用問題的常用思路是:發(fā)現問題、分析問題、設計方案、解決問題、灰度測試、上線、效果驗證。陳岳偉所帶領的微信優(yōu)化團隊也不例外,他以解決內存占有率太高這個問題為例,詳細介紹了他們是如何操作的。

  通過用戶反饋這個渠道,他們發(fā)現微信存在閃退的現象。優(yōu)化團隊發(fā)現,這種閃退現象并沒有Crash上報,于是他們將這種閃退現象定性為爆內存。為什么會有爆內存?優(yōu)化團隊再進一步研究發(fā)現,大多數反饋用戶都是在聯(lián)系人加載完成的那一步突然出現閃退現象,這些用戶的聯(lián)系人往往超過了10萬名,并且加入一兩百個大群。

  那么該如何解決它?首先需要進行情景還原,也就是把整條鏈路還原回來,重新構建用戶問題發(fā)生的場景,然后解決問題。“假設不去重現這些場景的話,你會發(fā)現很多問題都是打著補丁的,解決得并不徹底。”

  情景還原之后,優(yōu)化團隊發(fā)現,微信緩存內存高達112M,遠遠高于大多數用戶幾M的大小。其根源就在于用戶的聯(lián)系人過多,而每一個聯(lián)系人的類結構有90個屬性,每個聯(lián)系人占用1K內存,所以就很容易達到了112M的內存。

  問題分析清楚之后,方案設計的實現就變得非常簡單,無非就兩種方案:一是將聯(lián)系人的屬性降低到更小,這樣存儲就可以更小,二是采取比較直觀的解決方法——按需加載。最終微信優(yōu)化團隊設置了15000名聯(lián)系人限制,微信允許這15000人一直在內存中存在,其中就包含所有好友,而對于群聊陌生人則通過按需加載,并給予額外10000的緩存上限。“實際應用后,我們發(fā)現,90%的用戶都不會達到這個上限。”陳岳偉透露,他們做優(yōu)化有一個原則,首要保障性能的損耗最小,影響的用戶最少。

  最終,優(yōu)化團隊***地解決了爆內存的問題,平均可以降低用戶92%的內存占比。

  比解決問題更難的是準確分析問題

  “問題的關鍵在于如何發(fā)現問題,分析問題,這個過程非常復雜,如果你的分析有理有據,可以找到問題根源所在,那么解決問題就變得比較簡單了。”陳岳偉還分享道,解決問題的時候盡量要做到區(qū)別對待,對正常用戶還是保持它原有的邏輯,而對重度用戶可以調整部分處理方式,這樣就可以保證應用的影響范圍降到***,也可以讓應用的常規(guī)用戶得到完全無損的體驗。

  在解決重度用戶的過程中,微信優(yōu)化團隊也總結了一些經驗做法。

  首先是要保證一切可量化。一切可量化需要做到哪種程度?在解決問題的過程中,他們發(fā)現需要有數據來做支撐,這不僅僅在影響范圍評估時可以量化,其實在問題分析、問題影響范圍評估、上線效果驗證等方面都需要有量化的指標。假設沒有任何的精確數據告訴開發(fā)團隊解決問題的詳細相關數據,那就沒有辦法真正有效地去解決問題。

  其次是灰度上線。陳岳偉透露,Facebook做了很多復雜的AB Test系統(tǒng),包含了性能、廣告在內。微信也做了一個類似的AB Test,對用戶聯(lián)系人、賬號、消息等核心模塊進行改造時,均通過灰度方式,逐步放量實驗新的解決方案,發(fā)現問題就重新修復,再次灰度放量,直到穩(wěn)定性非常高的時候,再全量放開發(fā)布。

  采訪***陳岳偉告訴記者,他希望可以通過一些更好的措施把重度用戶的事情做得更好。目前來看做得還比較初級,以后將通過一些探索,通過某一些場景的深刻研究,把重度用戶優(yōu)化這件事情當作一個長期的事情來看待,能夠實現對重度用戶全局進行更精確的監(jiān)控和分析,提升問題發(fā)現和定位能力。

  采訪嘉賓:

  陳岳偉(Lylechen),微信客戶端開發(fā)團隊負責人,統(tǒng)籌微信在 iOS、Android、Mac 和 Windows 等平臺的開發(fā)管理工作。2010 年加入微信團隊,從無到有構建出微信的***個 iOS 版本,并持續(xù)不斷進行架構優(yōu)化和性能穩(wěn)定性打磨。近年來主要關注微信終端監(jiān)控體系以及微信重度用戶的性能提升和體驗優(yōu)化。

  APMCon2017

  APMCon是由聽云、極客邦科技與InfoQ聯(lián)合主辦的全球高水準APM技術盛會,聚焦當前最為關鍵的移動端、Web端和Server端的性能監(jiān)控和管理技術。整個會議包含智能運維、數據庫性能優(yōu)化、移動性能優(yōu)化、前端性能優(yōu)化、業(yè)務數據實時分析和可視化、微服務與容器與CDN加速等話題。

  APMCon內容源于實踐并面向社區(qū),來自國內外的演講嘉賓依據熱點話題,面向5年以上的技術團隊負責人、中高級開發(fā)和運維人員、工程總監(jiān)分享APM技術創(chuàng)新、趨勢和***實踐。

【51CTO原創(chuàng)稿件,合作站點轉載請注明原文作者和出處為51CTO.com】

責任編輯:周雪 來源: 51CTO
相關推薦

2020-07-27 15:06:14

微信張小龍焦慮

2013-08-08 10:13:25

微信

2013-04-11 14:10:55

2013-05-20 11:15:46

2020-11-20 07:05:26

微信騰訊移動應用

2012-07-26 14:44:11

微信張小龍

2019-12-16 17:25:04

Python微信群同步直播

2022-01-11 21:06:45

微信企業(yè)微信移動應用

2012-12-21 15:09:10

微 信 不是

2013-01-18 09:29:46

微信3億移動應用

2015-05-20 14:30:44

微信產品

2013-11-19 10:09:03

微信微信公號微信公眾賬號

2021-10-20 05:59:31

微信兩號社交騰訊

2021-01-10 08:16:25

微信移動應用實用技巧

2020-01-08 21:57:28

微信朋友圈好友上限

2015-03-06 10:00:16

微信馬化騰創(chuàng)業(yè)

2013-06-07 09:42:45

微信移動應用營銷工具

2020-02-18 19:04:24

微信綁架年輕人

2021-09-30 05:35:32

微信關懷模式騰訊

2013-08-26 15:21:41

微博微信易信
點贊
收藏

51CTO技術棧公眾號