一種發送好友更新微博消息的方法、伺服器和系統的製作方法
2023-06-15 23:24:26 1
專利名稱:一種發送好友更新微博消息的方法、伺服器和系統的製作方法
技術領域:
本發明涉及計算機技術領域,特別涉及一種發送好友更新微博消息的方法、伺服器和系統。
背景技術:
隨著網際網路應用的發展,微博作為一種擴展即時通訊消息傳播機制的新應用得到快速的增長。微博是用戶通過140個字左右的一句話來表達自己,這種方式的傳播和傳遞的速度非常快,實現用戶消息聊天模式從傳統的一對一、一對多到一對無窮的跨越,一對無窮的模式意味著一個人可以對無窮多個人進行消息的傳播,一個人同時也可以收聽萬級以上的好友,微博用戶的好友已經達到同時在線一億的量級,因此基於大量的好友,對獲取好友更新微博消息的應用提出了新的要求。現有的獲取好友更新微博消息的技術,一般是用戶每次登陸微博客戶端的過程中,向伺服器發送攜帶當前用戶的UIN(User Identification Number,用戶識別號碼)的請求信息;伺服器接收到該請求信息後,首先拉取該用戶的所有好友信息,並在所有好友中篩選出開通微博服務的好友,再根據篩選出的好友是否容許微博消息對好友可見,二次篩選出相應的ΠΝ列表;最後獲取二次篩選出的好友最近更新的微博消息ID及發表的時間戳信息,將該微博消息ID及發表的時間戳信息返回給客戶端。客戶端再次登陸後,還會重新觸發上述流程。在實現本發明的過程中,發明人發現現有技術至少存在以下問題:伺服器每次接收到請求信息後,要對用戶的所有好友信息進行二次篩選處理,由於當前微博好友的數量巨大,伺服器的負載量特別大;另外,不同的登錄過程中,伺服器對整個流程的處理沒有絲毫的減少,給伺服器帶來了巨大的負載量和流量浪費。
發明內容
為了降低伺服器的負載量和流量浪費,本發明實施例提供了一種發送好友更新微博消息的方法、伺服器和系統。所述技術方案如下:一方面,本發明實施例提供了一種發送好友更新微博消息的方法,所述方法包括:接收客戶端發送的請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息,所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的第一時間戳;根據所述識別號碼,獲取所述識別號碼對應的好友,並根據所述第一時間戳,判斷所述好友是否有更新微博消息;所述好友有更新微博消息時,將所述好友的更新微博消息發送給客戶端。其中,所述根據所述第一時間戳,判斷所述好友是否有更新微博消息,具體包括:根據所述開通微博的好友的識別號碼,獲取所述好友當前最新發表微博消息的第二時間戳;判斷所述好友當前最新發表微博消息的第二時間戳與所述請求信息中攜帶的所述好友發表微博消息的第一時間戳是否相同,若不同,判斷出所述好友有更新微博消息。其中,所述開通微博的好友的識別號碼具體包括開通微博且允許微博消息可見的好友的識別號碼;相應地,所述根據所述識別號碼,獲取所述識別號碼對應的好友,具體包括:根據所述開通微博且允許微博消息可見的好友的識別號碼,獲取所述識別號碼對應的開通微博且允許微博消息可見的好友。進一步地,所述接收客戶端發送的請求信息之前,所述方法還包括:根據為開通微博的好友預設的第一標誌位,獲取所述開通微博的好友的識別號碼;將所述開通微博的好友的識別號碼發送給所述客戶端,用於發起請求。進一步地,所述接收客戶端發送的請求信息之前,所述方法還包括:根據為允許微博消息可見的好友預設的第二標誌位和所述第一標誌位,獲取所述開通微博且允許微博消息可見的好友的識別號碼;將所述開通微博且允許微博消息可見的好友的識別號碼發送給所述客戶端,用於發起請求。其中,所述將所述好友的更新微博消息發送給所述客戶端,具體包括:將所述好友的更新微博消息以數據包的形式發送給所述客戶端;所述數據包中還攜帶一識別碼,所述識別碼用於識別所述好友的更新微博消息是否全部返回給客戶端。另一方面,本發明實施例還提供一種獲取好友更新微博消息的方法,所述方法包括:向伺服器發送請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息;所述用戶的好友相關信息至少包括開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳;獲取伺服器發送的好友的更新微博消息。進一步地,所述向伺服器發送請求信息之前,所述方法還包括:向伺服器發送第一請求信息,所述第一請求信息中攜帶用戶自身的識別號碼;獲取伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳。其中,所述開通微博的好友的識別號碼具體包括開通微博且允許微博消息可見的好友的識別號碼;相應地,所述好友發表微博消息的第一時間戳,具體包括所述開通微博且允許微博消息可見的好友的識別號碼的好友發表微博消息的第一時間戳。進一步地,所述方法還包括:獲取伺服器發送的數據包;根據所述數據包中攜帶的識別碼,判斷所述好友的更新微博消息是否全部返回;所述好友的更新微博消息未全部返回給客戶端時,根據未更新的好友的識別號碼,及本地緩存的所述未更新的好友發表微博消息的時間戳,再次向伺服器發起請求。另一方面,本發明實施例還提供一種伺服器,所述伺服器包括接收模塊、判斷模塊和發送模塊,所述接收模塊,用於接收客戶端發送的請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息;所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的時間戳;所述判斷模塊,用於根據所述識別號碼,獲取所述識別號碼對應的好友,並根據所述第一時間戳,判斷所述好友是否有更新微博消息;所述發送模塊,用於當所述判斷模塊的判斷結果為是時,將所述好友的更新微博消息發送給客戶端。其中,所述判斷模塊具體包括獲取單元和判斷單元;所述獲取單元,用於根據所述開通微博的好友的識別號碼,獲取所述好友當前最新發表微博消息的第二時間戳;所述判斷單元,用於判斷所述好友當前最新發表微博消息的第二時間戳與所述請求信息中攜帶的所述好友發表微博消息的第一時間戳是否相同,若不同,則判斷出所述好友有更新微博消息。其中,所述開通微博的好友的識別號碼具體包括開通微博且允許微博消息可見的好友的識別號碼,所述好友發表微博消息的第一時間戳具體包括開通微博且允許微博消息可見的好友發表微博消息的第一時間戳,所述判斷模塊,還用於根據所述開通微博且允許微博消息可見的好友的識別號碼,獲取所述識別號碼對應的開通微博且允許微博消息可見的好友,並根據所述開通微博且允許微博消息可見的好友發表微博消息的第一時間戳,判斷所述開通微博且允許微博消息可見的好友是否有更新微博消息。其中,所述發送模塊具體用於將所述好友的更新微博消息以數據包的形式發送給所述客戶端;所述數據包中還攜帶一識別碼,所述識別碼用於識別所述好友的更新微博消息是否全部返回給客戶端。另一方面,本發明實施例還提供一種客戶端,所述客戶端包括:發送模塊,用於向伺服器發送請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息;所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的第一時間戳;獲取模塊,用於獲取伺服器發送的好友的更新微博消息。進一步地,所述客戶端還包括:第一發送模塊,用於向伺服器發送第一請求信息,所述第一請求信息中攜帶用戶自身的識別號碼;第一獲取模塊,用於獲取伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳。其中,所述客戶端還包括:第二獲取模塊,用於獲取伺服器發送的用戶的開通微博且允許微博消息可見的好友的識別號碼和所述開通微博且允許微博消息可見的好友發表微博消息的第一時間戳。
進一步地,所述客戶端還包括處理模塊,所述處理模塊具體包括獲取單元、判斷單元和發送單元;所述獲取單元,用於獲取伺服器發送的數據包;所述判斷單元,用於根據所述數據包中攜帶的識別碼,獲取所述好友的更新微博消息是否全部返回;所述發送單元,用於當所述判斷單元判斷出所述好友的更新微博消息未全部返回時,根據未更新的好友的識別號碼,及本地緩存的所述未更新的好友發表微博消息的時間戳,再次向伺服器發起請求。另一方面,本發明實施例還提供一種獲取好友更新微博消息的系統,所述系統包括伺服器和客戶端;所述伺服器,用於接收所述客戶端發送的請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息,所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的第一時間戳;根據所述識別號碼,獲取所述識別號碼對應的好友,並根據所述第一時間戳,判斷所述好友是否有更新微博消息;所述好友有更新微博消息時,將所述好友的更新微博消息發送給客戶端;所述客戶端,用於緩存用戶的好友相關信息,向所述伺服器發送請求信息,獲取伺服器發送的好友的更新微博消息。其中,所述客戶端還用於向所述伺服器發送第一請求信息,所述第一請求信息中攜帶用戶自身的識別號碼;並獲取所述伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳;所述伺服器還用於根據用戶自身攜帶的識別號碼,獲取用戶的開通微博的好友的識別號碼和好友發表微博消息的第一時間戳,並將所述開通微博的好友的識別號碼和好友發表微博消息的第一時間戳發送給所述客戶端。本發明實施例提供的技術方案帶來的有益效果是:通過伺服器接收的請求信息中攜帶的開通微博的好友的識別號碼,從而獲取開通微博的好友是否更新微博消息,並發送開通微博的好友的更新信息。伺服器不再需要從用戶的所有好友中篩選出開通微博的好友的信息,而是直接根據請求信息,判斷開通微博的好友中哪些好友更新了微博信息,從而將好友的更新微博消息發送給客戶端。本技術方案接收的請求信息中攜帶了經過篩選過的好友的識別號碼,確定了請求的好友的範圍,從而有效減輕了伺服器的負載量,也降低了流量浪費,使用戶可以在登陸微博客戶端時且點擊展開好友列表後,第一時間看到開通微博的好友的最近更新的微博消息,在保證服務質量的同時降低了伺服器的負載量,為用戶提供更加便利的服務。
圖1是本發明實施例1中提供的發送好友更新微博消息的方法流程圖;圖2是本發明實施例2中提供的發送好友更新微博消息的方法流程圖;圖3是本發明實施例2中提供的一種獲取好友更新微博消息的系統的示意圖;圖4是本發明實施例3中提供的伺服器的結構示意圖;圖5是本發明實施例3中提供的判斷模塊的結構示意圖6是本發明實施例4中提供的客戶端的結構示意圖;圖7是本發明實施例5中提供的獲取好友更新微博消息的系統結構示意圖。
具體實施例方式為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。實施例1參見圖1,本發明實施例提出了一種發送好友更新微博消息的方法,具體包括:步驟101:接收客戶端發送的請求信息,該請求信息中攜帶預存儲的用戶的好友相關信息,用戶的好友相關信息至少包括開通微博的好友的識別號碼,和好友發表微博消息的第一時間戳;步驟102:根據識別號碼,獲取識別號碼對應的好友,並根據第一時間戳,判斷好友是否有更新微博消息;步驟103:好友有更新微博消息時,將好友的更新微博消息發送給客戶端。本發明實施例提供的方法,通過伺服器接收的請求信息中攜帶的開通微博的好友的識別號碼,從而獲取開通微博的好友是否更新微博消息,並發送開通微博的好友的更新信息。伺服器不再需要從用戶的所有好友中篩選出開通微博的好友的信息,而是直接根據請求信息,判斷開通微博的好友中哪些好友更新了微博信息,從而將好友的更新微博消息發送給客戶端。本發明接收的請求信息中攜帶了經過篩選過的好友的識別號碼,確定了請求的好友的範圍,從而有效減輕了伺服器的負載量,並降低了流量浪費,使用戶可以在登陸微博客戶端時且點擊展開好友列表後,第一時間看到開通微博的好友的最近更新的微博消息,在保證服務質量的同時降低了伺服器的負載量,為用戶提供更加便利的服務。實施例2參見圖2,本發明實施例提出了一種發送好友更新微博消息的方法,具體包括:步驟201:用戶首次登錄客戶端的過程,向微博後臺伺服器發送第一請求信息,該第一請求信息中攜帶用戶自身的識別號碼;該步驟針對的是用戶首次登陸客戶端,獲取好友的更新微博消息的情況。用戶發起的第一請求信息中攜帶了用戶自身的識別號碼,從而便於微博後臺伺服器能夠根據該用戶自身的識別號碼獲取該用戶對應的好友相關信息。進一步地,本發明實施例中,參見圖3,微博後臺伺服器包括微博索引伺服器、微博消息伺服器和微博用戶伺服器,其中,微博索引伺服器:主要用於管理所有用戶發表的微博消息索引以及用戶的識別標識之間的映射關係,便於可以根據用戶的識別號碼拉取到某種類型的相關所有微博消息ID (Identity,身份標識號碼)列表;微博消息伺服器:主要用於管理微博消息索引與微博消息的消息體之間的映射關係,微博客戶端可以用微博消息索引拉取到對應的微博消息的消息體;微博用戶伺服器:用於保存微博用戶的相關信息,如用戶自身的識別號碼,並提供某用戶是否設置了容許微博信息在好友上可展現等信息。參見圖3,進一步地,客戶端包括微博信息篩選模塊、微博信息存儲模塊和微博信息展示模塊,其中,微博信息篩選模塊,用於在客戶端登錄後根據本地的緩存信息篩選出本次需要發給伺服器的好友ΠΝ以及相應最新廣播消息時間信息等邏輯處理;微博信息存儲模塊:該模塊主要用於緩存本地伺服器返回的需要展示好友微博信息的好友ΠΝ,最近微博消息時間信息,消息ID,發表用戶帳號,暱稱等信息,並提供相應的接口供用戶信息查詢;微博信息展示模塊,用於處理客戶端的界面展示邏輯,當伺服器分批返回需要展示微博信息的好友時,根據一定的策略觸發好友列表的分組界面刷新,用以展示伺服器返回的微博廣播信息;步驟202:伺服器根據第一請求信息中攜帶的用戶自身的識別號碼,獲取用戶的好友相關信息,該用戶的好友相關信息至少包括用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳。用戶的好友相關信息具體包括:開通微博的好友的識別號碼和開通微博的好友發表微博消息的第一時間戳,並將該開通微博的好友的識別號碼和第一時間戳發送給客戶端。實際應用中,一個好友可能會發表了很多條微博消息,本實施例中將距離當前登錄時間最近的時間信息稱為發表微博消息的第一時間戳,如某用戶A有好友B等多個好友,其中用戶B發表了兩條微博消息,一條微博消息的時間為2011年5月I日,一條為2011年5月2日,若當前登陸時間是2011年5月10日的話,那麼伺服器發送的用戶B發表微博消息的第一時間戳是指2011年5月2日。其中,伺服器可以為開通微博的好友預設第一標誌位,該第二標誌位可以是標識、標記或符號等,如flag等。伺服器接收到用戶發送的第一請求信息,根據用戶自身的識別號碼,拉取完用戶的所有好友後,根據該第一標誌位獲取開通微博的好友的識別號碼;並將該開通微博的好友的識別號碼發送給戶端,用於發起請求,客戶端根據該開通微博的好友的識別號碼向伺服器發起請求。實際應用中,伺服器在用戶本次登錄客戶端,且二次或二次以上登錄伺服器時,可以根據該第一標誌位判斷該用戶的好友列表中是否出現新開通微博服務的好友,如若用戶的好友中第一標誌位的數目增加,則可判斷出在用戶的上次登錄和本次登錄期間,用戶的好友中有新開通微博服務的好友,此時,將該新開通微博服務的好友的識別號碼發送給客戶端進行緩存。另外,本發明實施例還可以判斷用戶的好友列表中出現的新的標誌位的數目,統計出用戶兩次登陸過程期間的新開通微博服務的好友數目。實際應用中,通過該標誌位統計出的新開通微博服務的好友數目相對較少,而且隨著好友開通微博服務的穩定,新開通微博服務的好友數目會越來越少。伺服器根據第一標誌位獲取用戶的開通微博的好友的識別號碼和第一時間戳的步驟為現有技術,本發明實施例在此不再贅述,該用戶的好友相關信息除包括開通微博服務的好友的識別號碼、開通微博服務的好友發表微博消息的第一時間戳外,該第一類相關信息還可以包括好友最新發表微博消息的索引信息、好友發表該微博消息的ID、好友的帳號、好友暱稱等息。進一步地,伺服器中的微博用戶伺服器也可以為允許微博消息可見的好友預設第二標誌位,該第二標誌位可以是標識、標記或符號等,如flag等。如某個好友設置了允許微博消息對該好友的好友不可見,伺服器會通過對該好友的用戶識別號碼加上一個特殊的欄位(如增加一個欄位flag),返回給客戶端,客戶端收到該標誌位在顯示的時候會進行相應邏輯的判斷。伺服器接收到用戶發送的第一請求信息,根據用戶自身的識別號碼,拉取完用戶的所有好友後,伺服器可以根據設置的第二標誌位判斷哪些好友設置了允許微博消息可見的服務,從而獲取到允許微博消息可見的好友的識別號碼,從而根據第一標誌位和第二標誌位,獲取開通微博且允許微博消息可見的好友的識別號碼;將開通微博且允許微博消息可見的好友的識別號碼發送給所述客戶端,用於發起請求,客戶端根據該開通微博且允許微博消息可見的好友的識別號碼向伺服器發起請求。客戶端接收到伺服器返回的好友相關信息,並緩存該好友相關信息,便於用戶再次登錄客戶端,客戶端根據緩存的好友相關信息生成的請求信息中攜帶開通微博的好友的識別號碼,或開通微博且允許微博消息可見的好友的識別號碼。步驟203:客戶端獲取伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳;步驟204:用戶再次登錄客戶端時,客戶端根據本地緩存的用戶的好友相關信息生成請求信息;其中,客戶端設置本地存儲信息模塊,用於緩存步驟202中伺服器返回的用戶的好友相關信息。客戶端生成的請求信息中攜帶預存儲的好友的識別號碼和該好友發表微博消息的第一時間戳,其中,該好友可以為開通微博的好友,也可以為開通微博且允許微博消息可見的好友。用戶登錄客戶端時,客戶端首先獲取該用戶自身的nN,並根據該UIN在本地存儲信息模塊中獲取該UIN對應的好友相關信息,如開通微博的好友的識別號碼,及該好友發表微博消息的第一時間戳,並根據上述好友相關信息生成請求信息。其中,根據上述好友相關信息生成請求信息的方式為現有技術,本發明實施例在此不再贅述。步驟205:客戶端向伺服器發送請求信息,該請求信息中攜帶預存儲的用戶的好友相關信息,該用戶的好友相關信息至少包括開通微博的好友的識別號碼和好友發表微博消息的第一時間戳;其中,客戶端根據步驟202中緩存的用戶的好友相關信息,在生成的請求信息中攜帶好友的識別號碼,及該好友發表微博消息的第一時間戳,其中該好友可以為開通微博的好友,也可以為開通微博且允許微博消息可見的好友;因此本發明實施例利用客戶端的緩存能力,在發起的請求信息中限定了請求範圍。步驟206:伺服器接收該請求信息,並根據請求信息中攜帶的識別號碼獲取該識別號碼對應的好友,並根據第一時間戳,判斷好友是否有更新消息;其中,由於每個好友對應有一個識別號碼,因而能夠根據該識別號碼獲取到識別號碼對應的好友。為便於說明,本發明實施例將在伺服器的請求信息中攜帶的好友發表微博消息的時間戳稱為第一時間戳;伺服器接收到用戶再次登錄發送的請求信息時,好友當前最新更新微博消息的時間戳稱為第二時間戳進行說明。具體地,伺服器根據所述第一時間戳,判斷好友是否有更新微博消息,具體包括:根據開通微博的好友的識別號碼,獲取好友當前最新發表微博消息的第二時間戳;並判斷好友當前最新發表微博消息的第二時間戳與請求信息中攜帶的好友發表微博消息的第一時間戳是否相同,若不相同,則表明該好友在用戶的兩次登錄期間更新了微博消息,判斷出該好友有更新微博消息,獲取該好友的更新微博消息,此時,好友的更新微博消息包括更新微博消息的好友的第二時間戳、更新微博消息的索引信息等信息;若相同,則表明該好友在用戶的兩次登錄期間沒有更新微博消息。步驟207:伺服器將該好友的更新微博消息發送給客戶端;通過該步驟,客戶端緩存了好友的更新微博消息,如好友最近更新的微博消息的第二時間戳,及該第二時間戳對應的微博消息的消息體等。另外,伺服器還將更新微博消息的好友帳號、好友暱稱等信息一併返回給客戶端;實際應用中,伺服器還將更新了微博消息的好友帳號、好友暱稱等信息發送給客戶端,用於客戶端顯示好友更新的微博消息,使客戶端顯示給用戶的信息更完善。如,用戶能夠根據好友帳號或好友暱稱等信息,獲知哪位好友最近更新了微博消息,並隨時了解好友的暱稱,提高了用戶的使用體驗。優選地,實際應用中,將好友的更新微博消息以數據包的形式發送給客戶端,由於一個網絡數據包的容量是相對有限的,可能存在伺服器返回給客戶端的一個數據包中,不能全部將伺服器獲取的更新微博消息的好友的更新信息返回。即,可以對伺服器獲取的更新微博消息的好友的更新信息分批返回給客戶端,使客戶端分批緩存好友的更新微博消息。本發明實施例中在數據包中攜帶一識別碼,用於識別好友的更新微博消息的好友是否全部返回給客戶端。通過分包邏輯,伺服器可以在每批返回給客戶端的數據包中攜帶一識別碼,該識別碼的格式及內容本發明不做限定,只要伺服器和客戶端預先約定好,從而在客戶端接收到數據包時,能夠獲知更新微博消息的好友的更新信息是否全部返回給客戶端。客戶端可以進一步地根據未返回更新信息的更新微博消息的好友的識別號碼,及緩存在本地的開通微博服務且允許微博消息可見的好友的識別號碼,再次生成請求信息,向伺服器發起請求,重複上述步驟204-207的操作,從而逐步獲取到更新微博消息的好友的全部更新信息。步驟208:客戶端獲取伺服器發送的好友的更新微博消息;具體地,客戶端獲取伺服器發送的數據包,根據該數據包中攜帶的識別碼,判斷好友的更新微博消息是否全部返回,好友的更新微博消息未全部返回給客戶端時,根據未更新的好友的識別號碼,及本地緩存的所述未更新的好友發表微博消息的時間戳,再次向伺服器發起請求。另外,客戶端獲取到伺服器發送的好友的更新微博消息後,根據該好友的更新微博消息展示相應的微博消息,該好友的更新微博消息中至少攜帶更新微博消息的好友的識別號碼,及更新微博消息的好友更新微博消息的第二時間戳。步驟209:客戶端根據伺服器發送的好友的更新微博消息,顯示好友的更新微博消息,並刷新好友列表進行顯示。具體地,客戶端可以在伺服器返回請求信息中的全部好友後,一併展示好友的微博消息,也可以在伺服器分批返回請求信息中的一部分好友列表後,先展示返回的好友的微博消息,其他好友的微博消息逐漸顯示出來。其中,對於更新了微博消息的好友,客戶端根據伺服器發送的更新微博消息的好友的更新信息中攜帶的好友帳號,好友更新的微博消息ID展示相應的微博消息,也可以將伺服器返回的更新微博消息的好友的更新信息中攜帶的好友帳號,好友更新的微博消息ID,結合緩存在本地的未變化的微博消息ID,生成該好友的顯示信息。對於未更新微博消息的好友,客戶端根據緩存在本地存儲信息模塊中的好友帳號及該好友發表的微博消息ID生成該好友的顯示信息。實際應用中,伺服器對好友列表的處理時間通常已經超出了客戶端好友列表顯示的時間,因而在生成好友的顯示信息後,刷新相應的好友列表以使好友的微博消息顯示出來。本發明實施例提供的方法,通過伺服器接收的請求信息中攜帶的開通微博的好友的識別號碼,從而獲取開通微博的好友是否更新微博消息,並發送開通微博的好友的更新信息。伺服器不再需要從用戶的所有好友中篩選出開通微博的好友的信息,而是直接根據請求信息,判斷開通微博的好友中哪些好友更新了微博信息,從而將好友的更新微博消息發送給客戶端。本發明客戶端發起的請求信息中攜帶了經過篩選過的好友的識別號碼,確定了請求的好友的範圍,從而有效減輕了伺服器的負載量,也降低了流量浪費,使用戶可以在登陸即時通訊工具且點擊展開好友列表後,第一時間看到開通微博的好友的最近更新的微博消息,在保證服務質量的同時降低了伺服器的負載量,為用戶提供更加便利的服務。實施例3參見圖4,本發明實施例提供了一種伺服器,所述伺服器包括接收模塊301、判斷模塊302和發送模塊303,接收模塊301,用於接收客戶端發送的請求信息,請求信息中攜帶預存儲的用戶的好友相關信息,用戶的好友相關信息至少包括開通微博服務的好友的識別號碼和好友發表微博消息的時間戳;判斷模塊302,用於識別號碼,獲取該識別號碼對應的好友,並根據第一時間戳,判斷好友是否有更新微博消息;發送模塊303,用於當判斷模塊302的判斷結果為是時,將好友的更新微博消息發
送給客戶端。其中,參見圖5,判斷模塊302具體包括獲取單元3021和判斷單元3022 ;獲取單元3021,用於根據開通微博的好友的識別號碼,獲取好友當前最新發表微博消息的第二時間戳;判斷單元3022,用於判斷好友當前最新發表微博消息的第二時間戳與請求信息中攜帶的好友發表微博消息的第一時間戳是否相同,若不相同,則判斷出好友更新了微博消
肩、O進一步地,開通微博的好友的識別號碼具體包括開通微博且允許微博消息可見的好友的識別號碼,好友發表微博消息的第一時間戳具體包括開通微博且允許微博消息可見的好友發表微博消息的第一時間戳,判斷模塊302,還用於根據開通微博且允許微博消息可見的好友的識別號碼,獲取識別號碼對應的開通微博且允許微博消息可見的好友,並根據開通微博且允許微博消息可見的好友發表微博消息的第一時間戳,判斷開通微博且允許微博消息可見的好友是否有更新微博消息。其中,發送模塊303具體用於將所述好友的更新微博消息以數據包的形式發送給所述客戶端;所述數據包中還攜帶一識別碼,所述識別碼用於識別所述好友的更新微博消息是否全部返回給客戶端。本發明實施例提供的伺服器,通過伺服器接收的請求信息中攜帶的開通微博的好友的識別號碼,從而獲取開通微博的好友是否更新微博消息,並發送開通微博的好友的更新信息。伺服器不再需要從用戶的所有好友中篩選出開通微博的好友的信息,而是直接根據請求信息,判斷開通微博的好友中哪些好友更新了微博信息,從而將好友的更新微博消息發送給客戶端。本發明有效減輕了伺服器的負載量,並降低了流量浪費,使用戶可以在登陸即時通訊工具且點擊展開好友列表後,第一時間看到開通微博的好友的最近更新的微博消息,在保證服務質量的同時降低了伺服器的負載量,為用戶提供更加便利的服務。實施例4參見圖6,本發明實施例提供了一種客戶端,所述客戶端具體包括發送模塊401和獲取模塊402,發送模塊401,用於向伺服器發送請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息;所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的第一時間戳;獲取模塊402,用於獲取伺服器發送的好友的更新微博消息。其中,客戶端還包括第一發送模塊403和第一獲取模塊404,第一發送模塊403,用於向伺服器發送第一請求信息,所述第一請求信息中攜帶用戶自身的識別號碼;第一獲取模塊404,用於獲取伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳。進一步地,客戶端還包括第二獲取模塊,用於獲取伺服器發送的用戶的開通微博且允許微博消息可見的好友的識別號碼和所述開通微博且允許微博消息可見的好友發表微博消息的第一時間戳。其中,客戶端還包括處理模塊405,處理模塊405具體包括獲取單元、判斷單元和發送單元;獲取單元,用於獲取伺服器發送的數據包;判斷單元,用於根據數據包中攜帶的識別碼,獲取好友的更新微博消息是否全部返回;發送單元,用於當判斷單元判斷出好友的更新微博消息未全部返回時,根據未更新的好友的識別號碼,及本地緩存的未更新的好友發表微博消息的時間戳,再次向伺服器發起請求。本發明實施例提供的客戶端,通過緩存開通微博的好友的識別號碼和該好友發表微博消息的第一時間戳,從而在發起請求信息中,在請求信息中攜帶開通微博的好友的識別號碼和第一時間戳,並獲取到伺服器發送的好友的開通微博消息。客戶端具有緩存能力,在獲取好友更新微博消息的過程中,降低了流量浪費,使用戶可以在登陸即時通訊工具且點擊展開好友列表後,第一時間看到開通微博的好友的最近更新的微博消息,在保證服務質量的同時降低了伺服器的負載量,為用戶提供更加便利的服務。實施例5參見圖7,本發明實施例提供了一種獲取好友更新微博消息的系統,該系統包括伺服器501和客戶端502 ;伺服器501,用於接收客戶端502發送的請求信息,請求信息中攜帶預存儲的用戶的好友相關信息,用戶的好友相關信息至少包括開通微博的好友的識別號碼,和好友發表微博消息的第一時間戳;根據識別號碼,獲取識別號碼對應的好友,並根據第一時間戳,判斷好友是否有更新微博消息;好友有更新微博消息時,將好友的更新微博消息發送給客戶端;客戶端502,用於緩存用戶的好友相關信息,向伺服器發送請求信息,獲取伺服器發送的好友的更新微博消息。其中,客戶端還用於向伺服器發送第一請求信息,該第一請求信息中攜帶用戶自身的識別號碼;並獲取伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳;相應地,伺服器501還用於根據用戶自身攜帶的識別號碼,獲取用戶的開通微博的好友的識別號碼和好友發表微博消息的第一時間戳,並將該開通微博的好友的識別號碼和好友發表微博消息的第一時間戳發送給客戶端502。其中,客戶端502還用於獲取伺服器發送的用戶的開通微博且允許微博消息可見的好友的識別號碼和所述開通微博且允許微博消息可見的好友發表微博消息的第一時間戳。本發明實施例提供的系統,通過伺服器接收的請求信息中攜帶的開通微博的好友的識別號碼,從而獲取開通微博的好友是否更新微博消息,並發送開通微博的好友的更新信息。伺服器不再需要從用戶的所有好友中篩選出開通微博的好友的信息,而是直接根據請求信息,判斷開通微博的好友中哪些好友更新了微博信息,從而將好友的更新微博消息發送給客戶端。本發明有效減輕了伺服器的負載量,並降低了流量浪費,使用戶可以在登陸即時通訊工具且點擊展開好友列表後,第一時間看到開通微博的好友的最近更新的微博消息,在保證服務質量的同時降低了伺服器的負載量,為用戶提供更加便利的服務。本實施例提供的伺服器、客戶端及系統,具體可以與方法實施例屬於同一構思,其具體實現過程詳見方法實施例,這裡不再贅述。本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過硬體來完成,也可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種發送好友更新微博消息的方法,其特徵在於,所述方法包括: 接收客戶端發送的請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息,所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的第一時間戳; 根據所述識別號碼,獲取所述識別號碼對應的好友,並根據所述第一時間戳,判斷所述好友是否有更新微博消息; 所述好友有更新微博消息時,將所述好友的更新微博消息發送給客戶端。
2.按權利要求1所述的方法,其特徵在於,所述根據所述第一時間戳,判斷所述好友是否有更新微博消息,具體包括: 根據所述開通微博的好友的識別號碼,獲取所述好友當前最新發表微博消息的第二時間戳; 判斷所述好友當前最新發表微博消息的第二時間戳與所述請求信息中攜帶的所述好友發表微博消息的第一時間戳是否相同,若不同,判斷出所述好友有更新微博消息。
3.按權利要求1所述的方法,其特徵在於,所述開通微博的好友的識別號碼具體包括開通微博且允許微博消息可見的好友的識別號碼; 相應地,所述根據所述識別號碼,獲取所述識別號碼對應的好友,具體包括: 根據所述開通微博且允許微博消息可見的好友的識別號碼,獲取所述識別號碼對應的開通微博且允許微博消息可見的好友。
4.按權利要求1所述的方 法,其特徵在於,所述接收客戶端發送的請求信息之前,所述方法還包括: 根據為開通微博的好友預設的第一標誌位,獲取所述開通微博的好友的識別號碼; 將所述開通微博的好友的識別號碼發送給所述客戶端,用於發起請求。
5.按權利要求4所述的方法,其特徵在於,所述接收客戶端發送的請求信息之前,所述方法還包括: 根據為允許微博消息可見的好友預設的第二標誌位和所述第一標誌位,獲取所述開通微博且允許微博消息可見的好友的識別號碼; 將所述開通微博且允許微博消息可見的好友的識別號碼發送給所述客戶端,用於發起請求。
6.按權利要求1-5任一項權利要求所述的方法,其特徵在於,所述將所述好友的更新微博消息發送給所述客戶端,具體包括: 將所述好友的更新微博消息以數據包的形式發送給所述客戶端; 所述數據包中還攜帶一識別碼,所述識別碼用於識別所述好友的更新微博消息是否全部返回給客戶端。
7.一種獲取好友更新微博消息的方法,其特徵在於,所述方法包括: 向伺服器發送請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息;所述用戶的好友相關信息至少包括開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳; 獲取伺服器發送的好友的更新微博消息。
8.按權利要求7所述的方法,其特徵在於,所述向伺服器發送請求信息之前,所述方法還包括: 向伺服器發送第一請求信息,所述第一請求信息中攜帶用戶自身的識別號碼; 獲取伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳。
9.按權利要求8所述的方法,其特徵在於,所述開通微博的好友的識別號碼具體包括開通微博且允許微博消息可見的好友的識別號碼; 相應地,所述好友發表微博消息的第一時間戳,具體包括所述開通微博且允許微博消息可見的好友的識別號碼的好友發表微博消息的第一時間戳。
10.按權利要求8所述的方法,其特徵在於,所述方法還包括: 獲取伺服器發送的數據包; 根據所述數據包中攜帶的識別碼,判斷所述好友的更新微博消息是否全部返回;所述好友的更新微博消息未全部返回給客戶端時,根據未更新的好友的識別號碼,及本地緩存的所述未更新的好友發表微 博消息的時間戳,再次向伺服器發起請求。
11.一種伺服器,其特徵在於,所述伺服器包括接收模塊、判斷模塊和發送模塊, 所述接收模塊,用於接收客戶端發送的請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息;所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的時間戳; 所述判斷模塊,用於根據所述識別號碼,獲取所述識別號碼對應的好友,並根據所述第一時間戳,判斷所述好友是否有更新微博消息; 所述發送模塊,用於當所述判斷模塊的判斷結果為是時,將所述好友的更新微博消息發送給客戶端。
12.按權利要求11所述的伺服器,其特徵在於,所述判斷模塊具體包括獲取單元和判斷單元; 所述獲取單元,用於根據所述開通微博的好友的識別號碼,獲取所述好友當前最新發表微博消息的第二時間戳; 所述判斷單元,用於判斷所述好友當前最新發表微博消息的第二時間戳與所述請求信息中攜帶的所述好友發表微博消息的第一時間戳是否相同,若不同,則判斷出所述好友有更新微博消息。
13.按權利要求11所述的伺服器,其特徵在於,所述開通微博的好友的識別號碼具體包括開通微博且允許微博消息可見的好友的識別號碼,所述好友發表微博消息的第一時間戳具體包括開通微博且允許微博消息可見的好友發表微博消息的第一時間戳, 所述判斷模塊,還用於根據所述開通微博且允許微博消息可見的好友的識別號碼,獲取所述識別號碼對應的開通微博且允許微博消息可見的好友,並根據所述開通微博且允許微博消息可見的好友發表微博消息的第一時間戳,判斷所述開通微博且允許微博消息可見的好友是否有更新微博消息。
14.按權利要求11-13任一項權利要求所述的伺服器,其特徵在於,所述發送模塊具體用於將所述好友的更新微博消息以數據包的形式發送給所述客戶端;所述數據包中還攜帶一識別碼,所述識別碼用於識別所述好友的更新微博消息是否全部返回給客戶端。
15.一種客戶端,其特徵在於,所述客戶端包括:發送模塊,用於向伺服器發送請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息;所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的第一時間戳; 獲取模塊,用於獲取伺服器發送的好友的更新微博消息。
16.按權利要求15所述的客戶端,其特徵在於,所述客戶端還包括: 第一發送模塊,用於向伺服器發送第一請求信息,所述第一請求信息中攜帶用戶自身的識別號碼; 第一獲取模塊,用於獲取伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳。
17.按權利要求15所述的客戶端,其特徵在於,所述客戶端還包括: 第二獲取模塊,用於獲取伺服器發送的用戶的開通微博且允許微博消息可見的好友的識別號碼和所述開通微博且允許微博消息可見的好友發表微博消息的第一時間戳。
18.按權利要求15所述的客戶端,其特徵在於,所述客戶端還包括處理模塊,所述處理模塊具體包括獲取單元、判斷單元和發送單元; 所述獲取單元,用於獲取伺服器發送的數據包; 所述判斷單元,用於根據所述數據包中攜帶的識別碼,獲取所述好友的更新微博消息是否全部返回; 所述發送單元,用於當所述判斷單元判斷出所述好友的更新微博消息未全部返回時,根據未更新的好友的識別號碼,及本地緩存的所述未更新的好友發表微博消息的時間戳,再次向伺服器發起請 求。
19.一種獲取好友更新微博消息的系統,其特徵在於,所述系統包括伺服器和客戶端; 所述伺服器,用於接收所述客戶端發送的請求信息,所述請求信息中攜帶預存儲的用戶的好友相關信息,所述用戶的好友相關信息至少包括開通微博的好友的識別號碼,和所述好友發表微博消息的第一時間戳;根據所述識別號碼,獲取所述識別號碼對應的好友,並根據所述第一時間戳,判斷所述好友是否有更新微博消息;所述好友有更新微博消息時,將所述好友的更新微博消息發送給客戶端; 所述客戶端,用於緩存用戶的好友相關信息,向所述伺服器發送請求信息,獲取伺服器發送的好友的更新微博消息。
20.按權利要求19所述的伺服器,其特徵在於,所述客戶端還用於向所述伺服器發送第一請求信息,所述第一請求信息中攜帶用戶自身的識別號碼;並獲取所述伺服器發送的用戶的開通微博的好友的識別號碼和所述好友發表微博消息的第一時間戳; 所述伺服器還用於根據用戶自身攜帶的識別號碼,獲取用戶的開通微博的好友的識別號碼和好友發表微博消息的第一時間戳,並將所述開通微博的好友的識別號碼和好友發表微博消息的第一時間戳發送給所述客戶端。
全文摘要
本發明公開了一種發送好友更新微博消息的方法、伺服器和系統,屬於計算機技術領域。所述方法包括接收客戶端發送的請求信息,請求信息中攜帶預存儲的用戶的好友相關信息,用戶的好友相關信息至少包括開通微博的好友的識別號碼,和好友發表微博消息的第一時間戳;根據識別號碼,獲取識別號碼對應的好友,並根據第一時間戳,判斷好友是否有更新微博消息;好友有更新微博消息時,將好友的更新微博消息發送給客戶端。本發明有效減輕了伺服器的負載量,降低了流量浪費,使用戶可以在登陸微博客戶端時且點擊展開好友列表後,第一時間看到開通微博的好友的最近更新的微博消息,在保證服務質量的同時降低了伺服器的負載量,為用戶提供更加便利的服務。
文檔編號H04L29/06GK103095748SQ20111033539
公開日2013年5月8日 申請日期2011年10月28日 優先權日2011年10月28日
發明者庫宇, 袁昌文 申請人:騰訊科技(北京)有限公司