開發與維運

2021阿里雲峰會|友盟+:以一站式應用性能監控平臺,為應用“維穩”賦能

5月28日--29日,"2021阿里雲峰會暨阿里雲開發者大會"在北京國家會議中心舉行,此次峰會以“雲上創新”為主題,阿里雲與眾多嘉賓、合作伙伴共同探討了企業數字創新的新思路、新策略、新產品、新方案,展開“雲上創新”的全景圖。會上,友盟+高級技術專家李成亮帶來了“如何保證移動應用穩定性”這一議題的分享。

不同於其他嘉賓所置身的服務端發佈、代碼管理等領域,李成亮的關注點更多在於如何幫助手機上的App“維穩”,讓這些應用避免發生崩潰、卡死等問題。

1.png

(圖為:友盟+高級技術專家 李成亮)

李成亮表示,目前大部分的App應用,在穩定性上做的還遠遠不夠。前不久,友盟+發佈了《2021Q1,友盟+移動應用性能體驗白皮書》。根據白皮書數據,移動應用整體的崩潰率是0.29%。但是,李成亮認為,一個應用的崩潰率達到千分之一才是及格的水平,目前大部分應用在降低崩潰率的道路上仍然道阻且長。

2.png

不止如此,從另一個角度來看,DAU越大的應用,崩潰率反而越低:DAU大於100萬的應用,崩潰率是低於平均水平的,反之,DAU在1萬到100萬區間的應用,崩潰率則高於平均水平。

“這就說明,越是頭部的大公司,越有資源、有技術做移動應用性能相關的治理,而一些普通的公司在這方面既有迫切的需求,又需要提升相關的能力。”李成亮感慨道。

3.png

面對各行各業存在的應用崩潰問題,友盟+致力於賦能開發者、幫助客戶“維穩”、增長。截止2020年6月,友盟+服務了200萬+ App、890萬+網站,在行業十年如一日的深耕中,形成了一流的技術研發能力。

應用性能穩定是良好用戶體驗中非常關鍵的一環,而現實情況卻是應用崩潰、卡頓、加載緩慢、頁面白屏等問題,頻頻出現在用戶的真實體驗之中,成為影響業務表現的直接殺手。那麼,李成亮團隊是如何為開發者賦能、解決崩潰等影響應用性能穩定的問題呢?

移動應用性能監控平臺:從監控、告警、分析,到提供解決方案、驗證的一條龍服務

事實上,應用崩潰率居高不下的根本原因,在於穩定性問題的不可控:儘管開發者在研發到上線的整個過程中做了很多努力,仍然沒有辦法避免應用上線後在穩定性方面出現各式各樣的問題。

“在研發階段,工程師大多比較注重功能的開發,不一定會考慮到應用的穩定性因素;在測試階段,又面臨著測試用例覆蓋不全等棘手的問題,尤其是對一些極限或邊緣的case考慮較少;在灰度階段,又存在灰度樣本不足等問題;而到了全量上線階段,又會發現終端用戶的使用環境複雜多變。總之,上線後仍然存在著各式各樣、意想不到的複雜問題。”李成亮總結。

那麼,如何發現並解決這些問題?在調研了業界的諸多企業及解決方案後,李成亮及團隊研發了友盟+移動應用性能監控平臺U-APM。

首先,移動應用性能監控平臺U-APM可以對應用崩潰、錯誤進行實時的監控和分析,也能夠對遊戲引擎崩潰,卡頓等狀況進行分析。未來,平臺也會支持對頁面、網絡、內存等方面進行分析,能夠讓用戶全面瞭解當前的應用性能的狀況。

4.png

其次,U-APM平臺還有智能告警這一功能:當應用出現問題的時候,會第一時間收到告警,從而讓用戶快速分析,快速定位。移動應用性能監控平臺支持多個緯度的分析,包括單個設備、全鏈路、甚至應用整個生命週期的狀況的分析。

不止如此,U-APM平臺還可以進行智能診斷,在發現問題後,還會給出一些解決問題的方案、方法。最後,U-APM平臺還提供雲真機功能,支持開發者對崩潰問題進行復現、驗證。為移動開發者提供了靈活地測試操作界面,支持ADB調試、WEB遠程調試、掃碼、抓包、虛擬定位等測試功能,並提供了測試報告供開發者後續查看。可以說,移動應用性能監控平臺U-APM完整地構建了一個從監控到報警、到分析原因,再到給出解決方案,最後針對問題做復現和驗證的全鏈路閉環能力。

業務能力領先業界:細數移動應用性能監控平臺的技術特點

首先,友盟+移動應用性能監控平臺U-APM具有實時、全面監控應用崩潰的能力。除了常規的應用崩潰以外,極限條件下的崩潰,平臺也能捕獲到。

“比如說安卓手機第三方ROM的兼容性導致應用出問題、或者應用中的某些組件直接調用exit(0)、內存發生OOM、應用被系統強制殺死等情況,我們都能捕獲到。另外對於手機的一些硬件問題,比如溫度過熱導致系統被殺死等情況,也能捕獲。”李成亮舉例道。

第二大特點是U-APM對ANR的捕獲能力業界領先。

李成亮表示,傳統方案主要是通過監控手機上的日誌來監控,但傳統方案實際上是有些問題的。一大問題就是如果日誌生成出問題,則捕獲不到ANR;還有一個問題是監控時可能ANR的場景已經發生完了,生成日誌所處的環境實際上已經靠後,就有可能錯過了ANR的真正發生的時期。

5.png

而友盟+的方案實際上是直接截獲了系統層SIGQUIT信號:如圖所示,藍色的是平臺構建的信號攔截器,綠色的是系統攔截器,橙色的是平臺的鏈路,黃色是系統鏈路。在發生ANR的時候,平臺直接攔截到了這個信號,平臺攔截器截獲信號後調用系統Trace模塊,生成有時效性的日誌。

“值得一提的是,在這個過程中我們還加入很多額外的信息,我們生成的日誌比系統的Trace還要更加豐富。”李成亮表示。一系列操作下來,平臺就會很好地捕獲ANR發生的時間點,更準確的生成日誌信息。

第三大特點就是上述提到的智能診斷功能。作為開發者,當你遇到一個問題的時候,很大概率上,這個問題已經被別人遇到過、解決過了。我們往往就把錯誤的提示拿到網上搜索,看看有什麼解決方案。

具體說來,監控平臺把市面上常見的一些移動端的問題做了梳理,形成上百個案例。這樣,開發者在後臺查看錯誤信息的時候,就能夠看到錯誤信息對應的解決方案,以及這個解決方案的優點和弊端。與此同時,方案知識庫也在不斷更新、發展,與時俱進。

第四大特點是雲真機模塊的優越性:機型全面,功能強大。

“目前,雲真機平臺上有130多款主流的機型,我們做移動端測試的時候,不可能買那麼多手機做測試,然而現實中常常會出現某個機型獨有、其他機型沒有的問題。所以這個時候,我們首先想到的就是在同樣機型上把問題復現出來。”

雲真機除了可以幫助用戶做應用問題排查以外,還支持網絡抓包、頁面的調試、ADB遠程調試等功能。值得一提的是,目前市面上雲真機都是按照時間來收費且計費昂貴,而友盟+的雲真機提供了很多免費時長給開發者使用。

6.png

第五大特點是智能告警功能,用戶可以靈活的制定告警規則,設置很多告警的條件,比如發生某一類型的錯誤、錯誤次數滿足某種規則、在某些版本上發生等等,滿足這些條件以後,在某個設置的時間觸達開發者。

平臺支持的告警渠道也很多,如釘釘、飛書、企業微信等,一旦線上發生問題,可以通過這些手機軟件及時獲得問題告警的通知。

“在服務開發者的過程中,很多開發者自己也有業務後臺,希望把友盟+的數據導入到開發者自己的業務系統中去。為了滿足這個需求,我們可以通過SDK採集數據指標,然後針對這些指標做處理、計算、解析,再把最終的結果數據通過API的方式發給客戶的平臺。”李成亮介紹了U-APM平臺的開放能力。

由此,客戶可以在自己的業務平臺上完成信息的流轉和處理,達到降本增效的效果。

戮力同心、力爭上游:友盟+攜手阿里雲,賦能更多開發者

千人同心,則得千人之力。在服務開發者、賦能開發者的使命和目標上,友盟+跟阿里雲是一致的。因此,友盟+和阿里雲有著諸多合作,二者共同在“服務開發者”這一願景上強強聯手。

雖然移動應用性能監控U-APM平臺是友盟+開發的,但實際上,許多底層技術都離不開阿里體系的技術助力,同時,這套應用性能監控技術也服務著阿里體系內部的眾多App。

在開發者服務方面,友盟+的應用性能監控平臺U-APM已經服務了上萬家的客戶,如唱吧、什麼值得買、中華萬年曆等。

“客戶其實有很多痛點,比如監控服務不穩定,監控指標不全面,報警方式不智能等等。我們的平臺都會針對客戶的痛點,解決他們遇到的問題,同時立足於他們的訴求,去提供更多更細的服務,得到了客戶非常好的反饋與評價。”李成亮表示。

7.png

不忘初心,方得始終。長期以來,友盟+以“數據智能,驅動業務增長”為使命,基於技術與算法能力,結合全域數據資源,通過AI賦能的一站式互聯網數據產品與服務體系,在幫助企業實現深度用戶洞察、實時業務決策和持續業務增長等方面,全面助力開發者成功。

Leave a Reply

Your email address will not be published. Required fields are marked *