国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

web 埋點實現(xiàn)原理了解一下

MASAILA / 1580人閱讀

摘要:前言埋點,是網(wǎng)站分析的一種常用的數(shù)據(jù)采集方法。缺點是流量和采集的數(shù)據(jù)過于龐大,服務(wù)器性能壓力山大,主流的就是這種實現(xiàn)方案。我們暫時放棄可視化埋點的實現(xiàn),在手動埋點和無埋點上進行了嘗試,為了便于描述,下文我會稱采集腳本為。

前言

埋點,是網(wǎng)站分析的一種常用的數(shù)據(jù)采集方法。我們主要用來采集用戶行為數(shù)據(jù)(例如頁面訪問路徑,點擊了什么元素)進行數(shù)據(jù)分析,從而讓運營同學(xué)更加合理的安排運營計劃。現(xiàn)在市面上有很多第三方埋點服務(wù)商,百度統(tǒng)計,友盟,growingIO 等大家應(yīng)該都不太陌生,大多情況下大家都只是使用,最近我研究了下 web 埋點,你要不要了解下。

現(xiàn)有埋點三大類型
用戶行為分析是一個大系統(tǒng),一個典型的數(shù)據(jù)平臺。由用戶數(shù)據(jù)采集,用戶行為建模分析,可視化報表展示幾個模塊構(gòu)成。現(xiàn)有的埋點采集方案可以大致被分為三種,手動埋點,可視化埋點,無埋點

手動埋點
手動代碼埋點比較常見,需要調(diào)用埋點的業(yè)務(wù)方在需要采集數(shù)據(jù)的地方調(diào)用埋點的方法。優(yōu)點是流量可控,業(yè)務(wù)方可以根據(jù)需要在任意地點任意場景進行數(shù)據(jù)采集,采集信息也完全由業(yè)務(wù)方來控制。這樣的有點也帶來了一些弊端,需要業(yè)務(wù)方來寫死方法,如果采集方案變了,業(yè)務(wù)方也需要重新修改代碼,重新發(fā)布。

可視化埋點
可是化埋點是近今年的埋點趨勢,很多大廠自己的數(shù)據(jù)埋點部門也都開始做這塊。優(yōu)點是業(yè)務(wù)方工作量少,缺點則是技術(shù)上推廣和實現(xiàn)起來有點難(業(yè)務(wù)方前端代碼規(guī)范是個大前提)。阿里的活動頁很多都是運營通過可視化的界面拖拽配置實現(xiàn),這些活動控件元素都帶有唯一標識。通過埋點配置后臺,將元素與要采集事件關(guān)聯(lián)起來,可以自動生成埋點代碼嵌入到頁面中。

無埋點
無埋點則是前端自動采集全部事件,上報埋點數(shù)據(jù),由后端來過濾和計算出有用的數(shù)據(jù),優(yōu)點是前端只要加載埋點腳本。缺點是流量和采集的數(shù)據(jù)過于龐大,服務(wù)器性能壓力山大,主流的 GrowingIO 就是這種實現(xiàn)方案。

我們暫時放棄可視化埋點的實現(xiàn),在 手動埋點無埋點 上進行了嘗試,為了便于描述,下文我會稱采集腳本為 SDK。

思考幾個問題
埋點開發(fā)需要考慮很多內(nèi)容,貫穿著不輕易動手寫代碼的原則,我們在開發(fā)前先思考下面這幾個問題

我們要采集什么內(nèi)容,進行哪些采集接口的約定

業(yè)務(wù)方通過什么方式來調(diào)用我們的采集腳本

手動埋點:SDK 需要封裝一個方法給業(yè)務(wù)方進行調(diào)用,傳參方式業(yè)務(wù)方可控

無埋點:考慮到數(shù)據(jù)量對于服務(wù)器的壓力,我們需要對無埋點進行開關(guān)配置,可以配置進行哪些元素進行無埋點采集

用戶標識:游客用戶和登錄用戶的采集數(shù)據(jù)怎么進行區(qū)分關(guān)聯(lián)

設(shè)備Id:用戶通過瀏覽器來訪問 web 頁面,設(shè)備Id需要存儲在瀏覽器上,同一個用戶訪問不同的業(yè)務(wù)方網(wǎng)站,設(shè)備Id要保持一樣,怎么實現(xiàn)

單頁面應(yīng)用:現(xiàn)在流行的單頁面應(yīng)用和普通 web 頁面的數(shù)據(jù)采集是否有差異

混合應(yīng)用:app 與 h5 的混合應(yīng)用我們要怎么進行通訊

我們要采集什么內(nèi)容,進行哪些采集接口的約定

第一期我們先實現(xiàn)對 PV(即頁面瀏覽量或點擊量) 、UV(一天內(nèi)同個訪客多次訪問) 、點擊量、用戶的訪問路徑的基礎(chǔ)指標的采集。精細化分析的流量轉(zhuǎn)化需要和業(yè)務(wù)相關(guān),需要和數(shù)據(jù)分析方做約定,我們預(yù)留擴展。所以我們的采集接口需要進行以下的約定

{
    "header":{ // HTTP 頭部
        "X-Device-Id":" 550e8400-e29b-41d4-a716-446655440000", //設(shè)備ID,用來區(qū)分用戶設(shè)備
        "X-Source-Url":"https://www.baidu.com/", //源地址,關(guān)聯(lián)用戶的整個操作流程,用于用戶行為路徑分析,例如登錄,到首頁,進入商品詳情,退出這一整個完整的路徑
        "X-Current-Url":"", //當前地址,用戶行為發(fā)生的頁面
        "X-User-Id":"",//用戶ID,統(tǒng)計登錄用戶行為
    },
    "body":[{ // HTTP Body體
        "PageSessionID":"", //頁面標識ID,用來區(qū)分頁面事件,例如加載和離開我們會發(fā)兩個事件,這個標識可以讓我們知道這個事件是發(fā)生在一個頁面上
        "Event":"loaded", //事件類型,區(qū)分用戶行為事件
        "PageTitle":  "埋點測試頁",  //頁面標題,直觀看到用戶訪問頁面
        "CurrentTime":  “1517798922201”,  //事件發(fā)生的時間
        "ExtraInfo":  {
         }    //擴展字段,對具體業(yè)務(wù)分析的傳參
    }]
}

以上就是我們現(xiàn)在約定好了的通用的事件采集的接口,所傳的參數(shù)基本上會根據(jù)采集事件的不同而發(fā)生變化。但是在用戶的整一個訪問行為中,用戶的設(shè)備是不會變化的,如果你想采集設(shè)備信息可以重新約定一個接口,在整個采集開始之前發(fā)送設(shè)備信息,這樣可以避免在事件采集接口上重復(fù)采集固定數(shù)據(jù)。

{
    "header":{ // HTTP 頭部
          "X-Device-Id"  :"550e8400-e29b-41d4-a716-446655440000"  ,      //  設(shè)備id
    },
    "body":{ // HTTP Body體
              "DeviceType":  "web" ,   //設(shè)備類型
             "ScreenWide"  :  768 , //  屏幕寬
             "ScreenHigh":  1366 , //  屏幕高
             "Language":    "zh-cn"  //語言
    }
}
業(yè)務(wù)方通過什么方式來調(diào)用我們的采集腳本

埋點應(yīng)該讓調(diào)用的業(yè)務(wù)方,盡可能少有工作量,最好是什么都不用做,

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/95089.html

相關(guān)文章

  • Android 性能監(jiān)控系列一(原理篇)

    摘要:全稱應(yīng)用性能管理監(jiān)控后面我會通過一系列的文章來介紹的原理框架設(shè)計與實現(xiàn)等等。在應(yīng)用構(gòu)建期間,通過修改字節(jié)碼的方式來進行字節(jié)碼插樁就是實現(xiàn)自動化的方案之一。 showImg(https://segmentfault.com/img/bVbbRX6?w=1995&h=1273); 歡迎關(guān)注微信公眾號:BaronTalk,獲取更多精彩好文! 一. 前言 性能問題是導(dǎo)致 App 用戶流失的罪魁...

    yacheng 評論0 收藏0
  • 前端監(jiān)控實踐——FMP的智能獲取算法

    今天來給大家介紹下前端監(jiān)控中一個特定指標的獲取算法,有人會問,為啥就單單講一個指標?這是因為,目前大部分的指標,比如白屏?xí)r間,dom加載時間等等,都能通過現(xiàn)代瀏覽器提供的各種api去進行較為精確的獲取,而今天講的這個指標,以往獲取他的方式只能是通過邏輯埋點去獲取它的值,因此在做一些前端監(jiān)控時,需要根據(jù)業(yè)務(wù)需要去改變頁面對這個值的埋點方式,會比較繁瑣,恰巧最近剛剛好在做一些前端監(jiān)控相關(guān)的項目,遇到這...

    xzavier 評論0 收藏0
  • 前端網(wǎng)頁加載渲染鏈路優(yōu)化

    摘要:所以,關(guān)于優(yōu)化實戰(zhàn)我們主要分為兩部分加載渲染鏈路優(yōu)化和編程代碼優(yōu)化。加載渲染鏈路優(yōu)化從訪問到頁面呈現(xiàn),整個鏈路可以做優(yōu)化的思路。資源緩存這一節(jié)我們單獨介紹緩存,是的,利用好緩存可以解決很多問題,包括頁面加載和渲染的問題都能得到很好的優(yōu)化。 優(yōu)化實戰(zhàn) 本文屬于思否課堂VirtualDOM到AST玩轉(zhuǎn)前端性能原理解析與代碼實戰(zhàn)課程官方博客:fed123.com 我們已經(jīng)全面分析總結(jié)了評估頁...

    zhaofeihao 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<