亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

頁面流量數據的上報方法及裝置、電子設備與流程

文檔序號:12597855閱讀:446來源:國知局
頁面流量數據的上報方法及裝置、電子設備與流程

本公開涉及計算機網絡技術,尤其涉及頁面流量數據的上報方法及裝置、電子設備。



背景技術:

目前web端的網站流量相關數據收集通常是在用戶產生瀏覽、點擊或是其他行為時,實時上報一條日志到日志服務器。在網站流量較大時,數據上報會造成高并發(fā),對日志服務器造成較大的壓力,而且上報數據中和用戶自身屬性相關的數據都是一樣的,例如:瀏覽器類型及版本、操作系統類型及版本、屏幕分辨率、語言、屏幕顏色深度等等信息都是重復上報的。

現有WEB端通常做法是Pageview級實時上報,可以理解為,每產生一個瀏覽或點擊行為就上報一條日志,最細粒度為每一個行為。由于用戶訪問網頁時的操作行為量龐大,如果對每個行為都即時觸發(fā)上報,會因高并發(fā)請求而致使服務器壓力巨大,資源消耗也非常嚴重。



技術實現要素:

針對現有技術存在的問題,本發(fā)明的目的在于提供一種頁面流量數據的上報方法及裝置、電子設備,能夠減少上報數據時的上報請求并發(fā)量,降低日志服務器的壓力。

本公開的其他特性和優(yōu)點將通過下面的詳細描述變得顯然,或部分地通過本公開的實踐而習得。

根據本公開的一個方面,提供一種頁面流量數據的上報方法,包括:

監(jiān)聽頁面會話的流量數據;

判斷頁面會話是否結束;

其中,當頁面會話結束時,將頁面會話期間內監(jiān)聽到的流量數據通過上報請求統一上報。

在本公開的一種示例性實施例中,還包括:

將監(jiān)聽到的頁面會話的流量數據拆分為第一數據和第二數據,其中,監(jiān)聽到的每條所述流量數據的所述第一數據相同、所述第二數據不同;

其中,當頁面會話結束時,將所述頁面會話期間內的多條所述第二數據以及一條所述第一數據合并后,通過上報請求統一上報。

在本公開的一種示例性實施例中,還包括:

將所述第一數據制作成字典表,其中所述字典表包括會話屬性字段和屬性值字段,所述屬性值字段中的屬性值對應于所述會話屬性字段中的會話屬性,所述屬性值字段中的屬性值映射為int值。

在本公開的一種示例性實施例中,所述會話屬性包括瀏覽器類型、操作系統類型、屏幕分辨率、語言和屏幕顏色深度。

在本公開的一種示例性實施例中,所述上報請求包括報頭和報文,在通過所述上報請求上報流量數據時,所述第一數據配置于所述上報請求的報頭中,所述多條第二數據配置于所述上報請求的報文中。

在本公開的一種示例性實施例中,所述第一數據配置于所述報頭的公有字段進行上報。

根據本公開的一個方面,提供一種頁面流量數據的上報方法,包括:

監(jiān)聽頁面會話的流量數據;

判斷頁面會話是否結束;

判斷監(jiān)聽到的流量數據條目是否達到一預定條目;

判斷監(jiān)聽到的所述流量數據條目達到所述預定條目所經過的第一時長與所述頁面會話結束所經過的第二時長的大??;

其中,當所述第一時長小于所述第二時長時,將所述第一時長內所監(jiān)聽到的流量數據通過上報請求統一上報;

當所述第一時長大于所述第二時長時,將所述第二時長內所監(jiān)聽到的流量數據通過上報請求統一上報。

在本公開的一種示例性實施例中,還包括:

將所述第一數據制作成字典表,其中所述字典表包括會話屬性字段和屬性值字段,所述屬性值字段中的屬性值對應于所述會話屬性字段中的會話屬性,所述屬性值字段中的屬性值映射為int值。

在本公開的一種示例性實施例中,所述會話屬性包括瀏覽器類型、操作系統類型、屏幕分辨率、語言和屏幕顏色深度。

在本公開的一種示例性實施例中,所述上報請求包括報頭和報文,在通過所述上報請求上報流量數據時,所述第一數據配置于所述上報請求的報頭中,所述多條第二數據配置于所述上報請求的報文中。

在本公開的一種示例性實施例中,所述第一數據配置于所述報頭的

公有字段進行上報。

根據本公開的一個方面,提供一種頁面流量數據的上報裝置,包括:

監(jiān)聽模塊,用于監(jiān)聽頁面會話的流量數據;

第一判斷模塊,用于判斷頁面會話是否結束;

第二判斷模塊,用于判斷監(jiān)聽到的流量數據條目是否達到一預定條目;

第三判斷模塊,用于判斷監(jiān)聽到的所述流量數據條目達到所述預定條目所經過的第一時長與所述頁面會話結束所經過的第二時長的大小,并輸出一判斷結果;

上報模塊,用于根據所述判斷結果將所述流量數據通過上報請求統一上報;

其中,當所述第一時長小于所述第二時長時,所述上報模塊將所述第一時長內所監(jiān)聽到的流量數據通過上報請求統一上報;當所述第一時長大于所述第二時長時,所述上報模塊將所述第二時長內所監(jiān)聽到的流量數據通過上報請求統一上報。

根據本公開的一個方面,提供一種電子設備,包括:

處理器;

存儲器,用于存儲處理器的執(zhí)行指令;

其中,所述處理器被配置為:

監(jiān)聽頁面會話的流量數據;

判斷頁面會話是否結束;

將頁面會話期間內監(jiān)聽到的流量數據通過上報請求統一上報。

本發(fā)明將頁面會話期間內的頁面流量數據統一進行上報,減少上報數據時的上報請求并發(fā)量,降低了日志服務器的壓力。

應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性的,并不能限制本公開。

附圖說明

通過參照附圖詳細描述其示例實施例,本公開的上述和其它目標、特征及優(yōu)點將變得更加顯而易見。

圖1示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖;

圖2示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖;

圖3示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖;

圖4示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖;

圖5示意性示出根據本公開示例實施方式的頁面流量數據的上報裝置的結構圖。

具體實施方式

現在將參考附圖更全面地描述示例實施方式。然而,示例實施方式能夠以多種形式實施,且不應被理解為限于在此闡述的范例;相反,提供這些實施方式使得本公開將更加全面和完整,并將示例實施方式的構思全面地傳達給本領域的技術人員。附圖僅為本公開的示意性圖解,并非一定是按比例繪制。圖中相同的附圖標記表示相同或類似的部分,因而將省略對它們的重復描述。

此外,所描述的特征、結構或特性可以以任何合適的方式結合在一個或更多實施方式中。在下面的描述中,提供許多具體細節(jié)從而給出對本公開的實施方式的充分理解。然而,本領域技術人員將意識到,可以實踐本公開的技術方案而省略所述特定細節(jié)中的一個或更多,或者可以采用其它的方法、組元、裝置、步驟等。在其它情況下,不詳細示出或描述公知結構、方法、裝置、實現、材料或者操作以避免喧賓奪主而使得本公開的各方面變得模糊。

附圖中所示的一些方框圖是功能實體,不一定必須與物理或邏輯上獨立的實體相對應??梢圆捎密浖问絹韺崿F這些功能實體,或在一個或多個硬件模塊或集成電路中實現這些功能實體,或在不同網絡和/或處理器裝置和/或微控制器裝置中實現這些功能實體。

以下示例性實施例中所描述的實施方式并不代表與本發(fā)明相一致的所有實施方式。相反,它們僅是與如所附權利要求書中所詳述的、本發(fā)明的一些方面相一致的系統和方法的例子。

圖1示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖。

如圖1所示,本發(fā)明的頁面流量數據的上報方法包括以下步驟:

步驟S110:監(jiān)聽頁面會話的流量數據。

本發(fā)明中所說的頁面(webpage),在WWW環(huán)境中,信息以頁面信息組織,信息頁面由語言來實現,在各個信息頁面之間建立超文本鏈接以便瀏覽。本發(fā)明所說的頁面會話是指用戶在瀏覽頁面時的各種操作行為,例如瀏覽行為、點擊行為等。用戶在瀏覽頁面時所產生的流量數據可以通過JavaScript(js)統計。用戶每發(fā)生一次操作行為,js就可以統計到一條流量數據。

步驟S120:判斷頁面會話是否結束。

本發(fā)明中可以根據關閉頁面或超過靜默時間進行判斷。例如,用戶瀏覽后關閉頁面表示頁面會話結束,則可以通過監(jiān)控頁面是否關閉來判斷頁面會話是否結束。用戶瀏覽經過較長時間沒有繼續(xù)任何操作也可以認為頁面會話結束,則可以通過監(jiān)控操作是否超過預定時間來判斷頁面會話是否結束。

步驟S130:當頁面會話結束時,將頁面會話期間內監(jiān)聽到的流量數據通過上報請求統一上報。

本發(fā)明在用戶的會話結束后統一上報用戶瀏覽頁面時的流量數據,降低了向日志服務器發(fā)送上報請求的頻率,減輕了日志服務器壓力,降低了資源消耗。

圖2示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖。

如圖2所示,在示例性實施例中,上報方法除包括以上步驟S110和步驟S120之外,還包括:

步驟S140:將監(jiān)聽到的頁面會話的流量數據拆分為第一數據和第二數據。

其中用戶在瀏覽頁面時所產生的流量數據包括第一數據(公有數據)和第二數據(私有數據)。公有數據表示用戶自身屬性的數據,對于同一用戶,頁面會話的每條流量數據的公有數據相同。私有數據表示用戶自身行為的數據,對于同一用戶,頁面會話的每條流量數據的私有數據不同。

步驟S130’:當頁面會話結束時,將頁面會話期間內的多條私有數據以及一條公有數據合并后,通過上報請求統一上報。由于頁面會話期間的流量數據的公有數據均相同,本實施例在進行數據上報時,僅將一條公有數據與多條私有數據合并,解決了公有數據重復上報的問題,降低了上報的數據量。

圖3示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖。

如圖3所示,在示例性實施例中,上報方法還包括:

步驟S150:將第一數據制作成字典表。

其中字典表包括會話屬性字段(key)和屬性值字段(value)。所述屬性值字段中的屬性值對應于所述會話屬性字段中的會話屬性,例如,包括瀏覽器類型、操作系統類型、屏幕分辨率、語言和屏幕顏色深度等。所述屬性值字段中的屬性值映射為int值,例如,chrome瀏覽器對應值為01、safari瀏覽器對應值為02、1366×1024分辨率對應值為11、640×320分辨率對應值為12等。

用戶訪問頁面時,通過js將字典表從對應的字典表服務器緩存入用戶瀏覽器的本地存儲器(localStorage)中,字典表可每天/每周更新一次。

用戶產生行為時,將用戶自身屬性的數據等通用性屬性,通過本地存儲器中的字典表映射后的值以“||”拼接后,緩存入瀏覽器的會話存儲器(sessionStorage)中,作為公有數據。由于映射后的公有數據的屬性值為int值,相比于字符串更小,所以能進一步減少上報的數據量。如果字典表沒有對應關系,則向字典表服務器發(fā)送同步請求,如果同步更新后的字典表中仍舊沒有映射關系,則由js生成新的映射關系值,可自增生成,并將生成的新映射關系上報到字典表服務器。

上述實施例中,合并后的公有數據和私有數據通過上報請求上報給日志服務器。公有數據放在上報請求的報頭中進行上報,可以使用報頭中協議內的公有字段或者自定義字段進行上報。使用報頭中自定義字段,瀏覽器會向日志服務器額外發(fā)送一個HTTP OPTIONS請求,這樣會額外增加日志服務器的壓力。因此,在一優(yōu)選實施例中,可將公有數據放在報頭中協議內的userAgent字段進行上報,userAgent字段是存用戶瀏覽器等信息,可由js進行修改。將公有數據放在報頭中協議內的公有字段上報,可以避免向日志服務器額外發(fā)送HTTP OPTIONS請求,降低了日志服務器的壓力。

上報請求的上報方式可以為GET方式上報或POST方式上報。如果上報請求為GET方式上報,則需要將各私有數據串聯拼接到上報請求鏈接中進行上報。由于部分瀏覽器(例如老版本IE)對URI的長度有限制,導致如果數據量較大時,GET方式上報會請求失敗。如果上報請求為POST方式上報,則各私有數據被放在報文中,不會受瀏覽器對URI的長度限制,因此采用POST方式上報相較于GET方式上報可以提高上報成功率。另外,對于POST方式上報,上報請求的報文中存儲數據的大小限制可以通過日志服務器的配置文件進行調整。

圖4示意性示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖。

如圖4所示,本發(fā)明的頁面流量數據的上報方法包括以下步驟:

步驟S210:監(jiān)聽頁面會話的流量數據。

步驟S220:判斷頁面會話是否結束。當判斷頁面會話結束時,記錄頁面會話結束所用時長,并輸出表示頁面會話結束時長的計算結果。

步驟S230:判斷監(jiān)聽到的流量數據條目是否達到預定條目。預定條目可以根據日志服務器所能承受的實際上報數據量進行預先設定,當監(jiān)聽到的流量數據條目達到預定條目時,記錄流量數據條目達到預定條目時所用的時長,并輸出表示流量數據條目達到預定條目時長的計算結果。

步驟S240:比較監(jiān)聽到的所述流量數據條目達到所述預定條目所經過的第一時長與所述頁面會話結束所經過的第二時長的大小。

步驟S250:當所述第一時長小于所述第二時長時,將所述第一時長內所監(jiān)聽到的流量數據通過上報請求統一上報;

步驟S260:當所述第一時長大于所述第二時長時,將所述第二時長內所監(jiān)聽到的流量數據通過上報請求統一上報。

本實施例中除了根據頁面會話結束時間來進行數據上報之外,又增加了根據數據條目數量進行數據上報的條件。對于頁面會話時間短,數據上報條目較少的情況,根據頁面會話是否結束為上報條件。而對于頁面會話期間內,數據上報條目非常多的情況,根據數據條目是否達到最大額定條目作為上報條件,可以避免在一次上報請求中上報數據量過多而影響上報所需時間和上報成功率。

在示例性實施例中,在步驟S210之后,還包括將監(jiān)聽到的頁面會話的流量數據拆分為第一數據和第二數據。

其中用戶在瀏覽頁面時所產生的流量數據包括第一數據(公有數據)和第二數據(私有數據)。公有數據表示用戶自身屬性的數據,對于同一用戶,頁面會話的每條流量數據的公有數據相同。私有數據表示用戶自身行為的數據,對于同一用戶,頁面會話的每條流量數據的私有數據不同。

當所述第一時長小于所述第二時長時,將所述第一時長內的多條私有數據以及一條公有數據合并后,通過上報請求統一上報。

當所述第一時長大于所述第二時長時,將所述第二時長內的多條所述私有數據以及一條公有數據合并后,通過上報請求統一上報。

本實施例在進行數據上報時,僅將一條公有數據與多條私有數據合并,解決了公有數據重復上報的問題,進一步降低了上報的數據量。

在示例性實施例中,公有數據可以被制作成字典表,其中所述字典表包括會話屬性字段(key)和屬性值字段(value),所述屬性值字段中的屬性值對應于所述會話屬性字段中的會話屬性,例如,包括瀏覽器類型、操作系統類型、屏幕分辨率、語言和屏幕顏色深度等。所述屬性值字段中的屬性值映射為int值,例如,chrome瀏覽器對應值為01、safari瀏覽器對應值為02、1366×1024分辨率對應值為11、640×320分辨率對應值為12等。

用戶訪問頁面時,通過js將字典表從對應的字典表服務器緩存入用戶瀏覽器的本地存儲器(localStorage)中,字典表可每天/每周更新一次。

用戶產生行為時,將用戶自身屬性的數據等通用性屬性,通過本地存儲器中的字典表映射后的值以“||”拼接后,緩存入瀏覽器的會話存儲器(sessionStorage)中,作為公有數據。由于映射后的公有數據的屬性值為int值,相比于字符串更小,所以能進一步減少上報的數據量。如果字典表沒有對應關系,則向字典表服務器發(fā)送同步請求,如果同步更新后的字典表中仍舊沒有映射關系,則由js生成新的映射關系值,可自增生成,并將生成的新映射關系上報到字典表服務器。

上述實施例中,合并后的公有數據和私有數據通過上報請求上報給日志服務器。公有數據放在上報請求的報頭中進行上報,可以使用報頭中協議內的公有字段或者自定義字段進行上報。使用報頭中自定義字段,瀏覽器會向日志服務器額外發(fā)送一個HTTP OPTIONS請求,這樣會額外增加日志服務器的壓力。因此,在一優(yōu)選實施例中,可將公有數據放在報頭中協議內的userAgent字段進行上報,userAgent字段是存用戶瀏覽器等信息,可由js進行修改。將公有數據放在報頭中協議內的公有字段上報,可以避免向日志服務器額外發(fā)送HTTP OPTIONS請求,降低了日志服務器的壓力。

上報請求的上報方式可以為GET方式上報或POST方式上報。如果上報請求為GET方式上報,則需要將各私有數據串聯拼接到上報請求鏈接中進行上報。由于部分瀏覽器(例如老版本IE)對URI的長度有限制,導致如果數據量較大時,GET方式上報會請求失敗。如果上報請求為POST方式上報,則各私有數據被放在報文中,不會受瀏覽器對URI的長度限制,因此采用POST方式上報相較于GET方式上報可以提高上報成功率。另外,對于POST方式上報,上報請求的報文中存儲數據的大小限制可以通過日志服務器的配置文件進行調整。

圖5示意性示出根據本公開示例實施方式的頁面流量數據的上報裝置的結構圖。

如圖5所示,該上報裝置包括監(jiān)聽模塊510,其用于監(jiān)聽頁面會話的流量數據;第一判斷模塊520,其用于判斷頁面會話是否結束;第二判斷模塊530,其用于判斷監(jiān)聽到的流量數據條目是否達到一預定條目;第三判斷模塊540,其用于判斷監(jiān)聽到的所述流量數據條目達到所述預定條目所經過的第一時長與所述頁面會話結束所經過的第二時長的大小,并輸出一判斷結果;上報模塊550,其用于根據所述判斷結果將所述流量數據通過上報請求統一上報;其中,當所述第一時長小于所述第二時長時,所述上報模塊550將所述第一時長內所監(jiān)聽到的流量數據通過上報請求統一上報;當所述第一時長大于所述第二時長時,所述上報模塊550將所述第二時長內所監(jiān)聽到的流量數據通過上報請求統一上報。

上述實施例中第一判斷模塊520、第二判斷模塊530和第三判斷模塊540可以合并為一個模塊來實現。并且第二判斷模塊530、第三判斷模塊540也可以省略,僅根據第一判斷模塊520的判斷結果作為上報條件,控制上報模塊550進行數據上報。

關于上述實施例中的裝置,其中各個模塊執(zhí)行操作的具體方式已經在有關該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。

根據本公開實施例的再一方面,提供一種電子設備,包括:處理器;用于存儲處理器可執(zhí)行指令的存儲器;其中,所述處理器被配置為:監(jiān)聽頁面會話的流量數據;判斷頁面會話是否結束;將頁面會話期間內監(jiān)聽到的流量數據通過上報請求統一上報。

在示例性實施例中,所述電子設備可為服務器、臺式計算機、平板計算機或其他智能型電子裝置,其中包括通信裝置、處理器、儲存裝置、顯示器及輸入裝置。其中,通信裝置、儲存裝置、顯示器及輸入裝置分別連接于處理器以接受處理器的控制。

通信裝置可為具有短程通訊功能的近場通訊(NFC)模塊、無線射頻識別(RFID)模塊或藍芽(Bluetooth)模塊等短程通訊模塊芯片。處理器則可為用戶終端當中的主要運算核心,例如為中央處理器(CPU)、嵌入式控制器(EC)或數字訊號處理器(DSP),或是被設計為專用于處理頁面流量數據統計的專用集成芯片(ASIC)或現場可編程邏輯門芯片(FPGA)。

儲存裝置用以儲存頁面流量數據。儲存裝置具體可為例如為快閃存儲器、可編程只讀存儲器等非揮發(fā)性存儲器(NVM)芯片。顯示器提供使用界面以顯示相關的頁面流量數據查詢信息,而輸入裝置則用以供使用者操作,以產生控制使用界面上的流量數據。顯示器及輸入裝置可整合為具有觸控面板的觸控式屏幕。

在示例性實施例,還提供了一種包括指令的非臨時性計算機可讀存儲介質,例如包括指令的存儲器,上述指令可由電子設備的處理器執(zhí)行以完成上述方法。例如,所述非臨時性計算機可讀存儲介質可以是ROM、隨機存取存儲器(RAM)、CD-ROM、磁帶、軟盤和光數據存儲設備等。

本發(fā)明實施例中其它內容參考上述發(fā)明實施例中的內容,在此不再贅述。

圖1和4示出根據本公開示例實施方式的頁面流量數據的上報方法的流程圖。該方法可例如利用如圖5所示的頁面流量數據的上報裝置實現,但本公開不限于此。需要注意的是,圖1和4僅是根據本公開示例實施方式的方法所包括的處理的示意性說明,而不是限制目的。易于理解,圖1和4所示的處理并不表明或限制這些處理的時間順序。另外,也易于理解,這些處理可以是例如在多個模塊/進程/線程中同步或異步執(zhí)行的。

通過以上的實施方式的描述,本領域的技術人員易于理解,這里描述的示例實施方式可以通過軟件實現,也可以通過軟件結合必要的硬件的方式來實現。因此,根據本公開實施方式的技術方案可以以軟件產品的形式體現出來,該軟件產品可以存儲在一個非易失性存儲介質(可以是CD-ROM,U盤,移動硬盤等)中或網絡上,包括若干指令以使得一臺計算設備(可以是個人計算機、服務器、移動終端、或者網絡設備等)執(zhí)行根據本公開實施方式的方法。

本領域技術人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本發(fā)明的一般性原理并包括本公開未公開的本技術領域中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權利要求指出。

以上具體地示出和描述了本公開的示例性實施方式。應可理解的是,本公開不限于這里描述的詳細結構、設置方式或實現方法;相反,本公開意圖涵蓋包含在所附權利要求的精神和范圍內的各種修改和等效設置。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1