APM終端使用者體驗監控分析(下)

OneAPM官方技術部落格發表於2016-05-05

一.前言

APM 終端使用者體驗監控分析(上)從 APM 終端使用者產品特性、使用建議、以及從真實使用者體驗模擬效能監控兩方面入手給大家進行了簡單的分享。

本文為下篇,將給大家介紹幾種新的 APM 終端使用者體驗監控的方式。

APM終端使用者體驗監控分析(下)

二.基於網路的資料包捕獲

基於網路的資料包捕獲工具對執行應用無任何影響,且不要求改變代理或軟體,因此無需進行大量的應用測試就可得出所需值。須在網路適當位置設計流量聚合層,且須使用矩陣或專業網路裝置以對正在被髮送到監控系統的流量進行更多粒狀過濾。流量聚合網路不僅可用於 APM 使用情況,還可用於安全監控產品和網路效能監控工具,例如,OneAPM CloudTestNewRelicAPPdynamic 等廠商都是比較有代表性的網路效能監控工具的提供商。

這些基於網路的資料包捕獲產品可測量響應時間、詳細內容、網路產生的錯誤程式碼(如重傳、DNS 解析問題、亂序資料包和 Nagle 延誤)、瀏覽器產生的錯誤程式碼(如請求中斷)以及應用產生的錯誤程式碼(如HTTP錯誤程式碼或者其他自定義錯誤資訊),有些產品還能重建和回放使用者實際看到的內容,如下兩圖所示:

APM終端使用者體驗監控分析(下)

APM終端使用者體驗監控分析(下)

從基礎設施和應用這兩個角度來看,這些工具對於應用支援團隊來說都極具價值。他們還可幫助業務分析師瞭解使用情況和應用交付的質量,例如可以通過 API 監控來了解第三方交付的軟體的質量問題。 APM終端使用者體驗監控分析(下) 第4張雖然資料包捕獲技術確實增加了監控軟體所捕獲限制資料的安全風險,但這些技術還是得到了互助網體系和其他基礎設施管理團隊的充分理解和高度認可,部分流量聚合交換機允許遮蔽敏感資料。

隨著應用複雜性的增強,通常需要結合公共或個人 Web 服務使用來自瀏覽器中的外部服務,並結合使用內容高速存取和內容分發網路,這就導致基於網路的方法缺乏可見性。一些提供基於網路的資料包捕獲的供應商通過允許在伺服器端裝置上進行資料包捕獲和分析來應對這一挑戰,因此在一些基於雲的基礎設施上進行部署時就具有可見性,比如基礎設施即服務(IaaS)、軟體即服務(SaaS),但根據流量情況這可能會引起系統開銷和可用資源超負荷。

目前國內外比較好的供應商如 OneAPMNewrelic等,他們可以網站從研發到上線的不同階段提供相應的解決方案。

三.客戶端變成伺服器

隨著基於網路和其他以網路為中心的應用程式交付方法特色功能的增多和使用的增加,客戶端承擔了比之前更多的處理負擔,這就需要對這些端點進行監控。有些方法包括一個基於代理的方法,一個嵌入式代理或者一個注入式代理。一些供應商針對這些不同的方法有相應的解決方案,不過最常採用的是注射法,即自動在網頁中插入 程式碼,這樣可監控瀏覽器執行時的時間選擇和執行情況。這些技術為基於網路的應用增添了可見性效能,且幫助我們瞭解到日益複雜的客戶端程式碼執行(包括 、 HTML5 和 APP)。 APM終端使用者體驗監控分析(下)

人工實施這些 監控技術通常會使得對已改變的軟體的測試過程變得複雜,並會增加質量保證的測試周期。APM 供應商也在不斷提高代理的能力來監控應用伺服器,在處理頁面時插入這種程式碼,從而減輕開發和測試團隊的負擔。隨著瀏覽器成為未來常用的應用交付平臺,這些技術也日趨變得重要。

國內的產品現在為止也就 Browser Insight 這款產品比較靠譜,別的廠家的的類似工具總是感覺維度不是那麼豐富。

四.瀏覽器標準的形成

隨著當前瀏覽器大量使用手動計時方法,這就促使瀏覽器供應商建立一個定時應用程式程式設計介面(API)向軟體開發人員開放使用。為此已形成多種標準:

Navigation Timing——該標準已廣為微軟的 Internet Explorer 9及以上版本、Mozilla Firefox 7 及以上版本、Google Chrome 6及以上版本以及微軟的 Windows Phone瀏覽器接受,,上文說過的 Browser Insight 採用的就是這一標準。

Boomerang——該自由釋放的 庫採用了多種計時方法,若瀏覽器支援的話它還將採用導航計時規範。

■ 另外,谷歌已悄悄釋出了一份谷歌 Chrome 瀏覽器支援的新協議。該協議屬於 HTTP 的高效能版本 SPDY,目前谷歌服務以及其他網際網路網站和 CDN 供應商均支援該協議。希望更多的採用這些標準以幫助我們更好的依賴 HTTP,因為應用交付的核心網際網路協議在某些情況下是存在問題的。

尋找能增加瀏覽器的可見性效能的解決方案,反過來那些自己記錄效能日誌的開發人員和那些提供更多詳細效能指標的 APM 供應商也可採用這些方案。

五.結語

第三方服務供應商不允許使用基於代理或基於網路的工具,這使得這些技術顯得不足。不過謝天謝地,根據這些應用元件聚合從瀏覽器角度改善可見性這點是可行的。隨著終端使用者體驗監控市場的變化,將會出現新的方法,能用來看到終端使用者留在桌面瀏覽器上以及通過 Wi-Fi 或資料連線的平板電腦和移動系統上的活動和體驗。對於網路和伺服器工具,通過IT操作分析方法將有可能增強網路資料包捕獲能力和分析能力。

以上方法將幫助我們撥開迷霧,讓被烏雲籠罩的可見性重見天日。

Cloud Test 是基於雲技術的實時監控系統,能夠幫大家實時監控網站效能,監控 CDN、DNS、API 、事務監控等第三方服務提供商的可用性,實現應用效能及時監測及時報警。想閱讀更多技術文章,請訪問OneAPM 官方技術部落格

本文轉自 OneAPM 官方部落格

相關文章