社交網(wǎng)絡(luò)信息處理方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明實(shí)施例公開了一種社交網(wǎng)絡(luò)信息處理方法及系統(tǒng),屬于數(shù)據(jù)服務(wù)和網(wǎng)絡(luò)通信【技術(shù)領(lǐng)域】。所述方法包括:針對每個用戶建立其發(fā)布信息列表;將接收到的用戶新發(fā)布的信息添加至對應(yīng)用戶的發(fā)布信息列表中;在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表;分別從所述關(guān)聯(lián)用戶列表中的每個用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息;以及將讀取的所有關(guān)聯(lián)用戶發(fā)布的信息返回至所述客戶端。本發(fā)明實(shí)施例提出的社交網(wǎng)絡(luò)信息處理方法采用“讀擴(kuò)散”方式,由各個用戶維護(hù)自己的一個發(fā)布信息列表,用戶通過聚合其關(guān)聯(lián)用戶列表發(fā)布的信息和自己的發(fā)布的信息就可以構(gòu)成用戶的個人首頁信息。
【專利說明】社交網(wǎng)絡(luò)信息處理方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)服務(wù)和網(wǎng)絡(luò)通信【技術(shù)領(lǐng)域】,特別涉及一種社交網(wǎng)絡(luò)信息處理方法及系統(tǒng),可以為用戶提供穩(wěn)定、高并發(fā)的海量數(shù)據(jù)讀取服務(wù)。
【背景技術(shù)】
[0002]隨著計算機(jī)運(yùn)用與互聯(lián)網(wǎng)技術(shù)的發(fā)展,各種社交網(wǎng)絡(luò)運(yùn)用而生。其中,微博是用戶在互聯(lián)網(wǎng)進(jìn)行消息分享、傳播的一種新方式,相比于平面、傳統(tǒng)媒體以及網(wǎng)站等傳播方式,微博最突出的特點(diǎn)是:快!微博,即微博客(MicroBlog)的簡稱,是一個基于用戶關(guān)系的信息分享、傳播以及獲取的平臺,用戶可以通過各種終端以簡短的文字(一般是140個字)發(fā)布個人所想、所做的信息,實(shí)現(xiàn)信息的即時分享。
[0003]在微博平臺上,每一個用戶都是一個分享者、傳播者,每一個消息都能通過用戶之間的關(guān)系鏈得到快速的傳播,消息的傳播是以爆炸式的擴(kuò)散進(jìn)行的。所謂關(guān)系鏈?zhǔn)侨伺c人之間由于某種興趣、目的或者利益而形成的關(guān)系列表,在微博特定場景中,主要是指由用戶收聽的人和該用戶的聽眾所組成的用戶集合。此外,微博的消息也是一種UGC (UserGeneratedContent ,用戶原創(chuàng)內(nèi)容)數(shù)據(jù)。
[0004]用戶在微博上獲取信息的方式一般是通過用戶個人首頁,而用戶個人首頁則由用戶發(fā)表消息、用戶收聽的人發(fā)表的信息以及用戶收到的信息等組成。由于數(shù)據(jù)是用戶產(chǎn)生的,海量的用戶催生出海量的數(shù)據(jù),同時又會帶來海量的讀寫量。如何快速的傳播、獲取這些數(shù)據(jù),提供高性能并發(fā)的讀取服務(wù),是【技術(shù)領(lǐng)域】必然面臨的問題。
[0005]現(xiàn)有技術(shù)方案的架構(gòu)設(shè)計如圖1,按其實(shí)現(xiàn)方式,可以稱為“寫擴(kuò)散”。
[0006]寫擴(kuò)散方法為每個用戶維護(hù)一個消息列表,用戶通過讀求該消息列表就可以構(gòu)成用戶的個人首頁消息。
[0007]寫擴(kuò)散方法對用戶每一條新產(chǎn)生的消息處理步驟如下:
[0008](I)產(chǎn)生一條新消息,并將該消息增加到用戶個人的消息列表。
[0009](2)拉取用戶的關(guān)系鏈列表(主要是聽眾列表)。
[0010](3)對于用戶的每一個聽眾,將新消息增加到聽眾的個人消息列表。
[0011]寫擴(kuò)散方法對用戶獲取信息的處理步驟如下:
[0012](I)從用戶個人消息列表獲取一定數(shù)量的消息。
[0013](2)根據(jù)特定的要求和查詢條件進(jìn)行過濾,并將結(jié)果返回。
[0014]現(xiàn)有技術(shù)方案的具有如下的缺點(diǎn):
[0015](I)實(shí)時性差。由于用戶每新發(fā)表一條消息,都需要遍歷用戶的聽眾列表,將新消息增加到其聽眾的個人消息列表。當(dāng)用戶的聽眾數(shù)較少時,性能不是瓶頸,實(shí)時性也很快。但是當(dāng)用戶的聽眾數(shù)增大到一定的量級,同樣是以寫擴(kuò)散的方式,對于同一條消息,不同的聽眾獲取到的時間差異會很大,消息傳播的實(shí)時性隨著用戶關(guān)系鏈的增加而呈現(xiàn)直線下降;
[0016](2)效率低。寫擴(kuò)散方式不考慮用戶的在線狀態(tài)而進(jìn)行全量的寫操作不是一種高效的方法,離線用戶并不需要實(shí)時的數(shù)據(jù)寫入,大量的CPU及網(wǎng)絡(luò)帶寬被用于性價比低下的操作;
[0017](3)寫擴(kuò)散方式對機(jī)器、網(wǎng)絡(luò)的要求高,直接導(dǎo)致運(yùn)維成本增加;
[0018](4)機(jī)器故障影響面廣,服務(wù)質(zhì)量差。當(dāng)某個服務(wù)進(jìn)程掛掉時,受影響的用戶的聽眾的消息列表就出現(xiàn)消息缺失的情況,導(dǎo)致服務(wù)不可用。
【發(fā)明內(nèi)容】
[0019]本發(fā)明實(shí)施例提供了一種社交網(wǎng)絡(luò)信息處理方法及系統(tǒng),提供實(shí)時高效、用戶體驗(yàn)好的信息傳播服務(wù),同時還降低了運(yùn)維成本。所述技術(shù)方案如下:
[0020]一種社交網(wǎng)絡(luò)信息處理方法,包括:
[0021]針對每個用戶建立其發(fā)布信息列表;
[0022]將接收到的用戶新發(fā)布的信息添加至對應(yīng)用戶的發(fā)布信息列表中;
[0023]在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表;
[0024]分別從所述關(guān)聯(lián)用戶列表中的每個用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息;以及
[0025]將讀取的所有關(guān)聯(lián)用戶發(fā)布的信息返回至所述客戶端。
[0026]一種社交網(wǎng)絡(luò)信息處理系統(tǒng),包括:
[0027]建立模塊,用于針對每個用戶建立其發(fā)布信息列表;
[0028]寫入模塊,用于將接收到的用戶新發(fā)布的信息添加至對應(yīng)用戶的發(fā)布信息列表中;
[0029]獲取模塊,用于在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表;
[0030]讀取模塊,用于分別從所述關(guān)聯(lián)用戶列表中的每個用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息;
[0031]返回模塊,用于將讀取的所有關(guān)聯(lián)用戶發(fā)布的信息返回至所述客戶端。
[0032]本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:本發(fā)明實(shí)施例提出了一種社交網(wǎng)絡(luò)信息處理方法及系統(tǒng),采用“讀擴(kuò)散”方式,由各個用戶維護(hù)自己的一個發(fā)布信息列表,保存本用戶發(fā)表過的信息,用戶通過聚合其關(guān)聯(lián)用戶列表發(fā)布的信息和自己的發(fā)布的信息就可以構(gòu)成用戶的個人首頁信息,可以為用戶提供實(shí)時高效、體驗(yàn)好的信息傳播服務(wù),同時還降低了運(yùn)維成本。
【專利附圖】
【附圖說明】
[0033]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0034]圖1是現(xiàn)有在微博中對信息進(jìn)行處理的流程圖;
[0035]圖2是本發(fā)明實(shí)施例提供的一種社交網(wǎng)絡(luò)信息處理方法的流程圖;
[0036]圖3是圖2的方法以運(yùn)用在微博場景中為例對信息進(jìn)行處理的流程圖;[0037]圖4是本發(fā)明實(shí)施例提供的一種社交網(wǎng)絡(luò)信息處理系統(tǒng)的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0038]本發(fā)明實(shí)施例提供一種社交網(wǎng)絡(luò)信息處理方法及系統(tǒng)。為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
[0039]圖2為本發(fā)明實(shí)施例提供的一種社交網(wǎng)絡(luò)信息處理方法的流程圖;圖3是圖2的社交網(wǎng)絡(luò)信息處理方法以運(yùn)用在微博場景中為例對信息進(jìn)行處理的流程圖。請參照圖2和圖3,所述方法包括:
[0040]步驟SlOl:針對每個用戶建立其發(fā)布信息列表;
[0041]具體地,為社交網(wǎng)絡(luò)提供信息處理功能的服務(wù)器將針對每個用戶建立其發(fā)布信息列表。
[0042]步驟S102:將接收到的用戶新發(fā)布的信息添加至對應(yīng)用戶的發(fā)布信息列表中;
[0043]具體地,用戶通過客戶端發(fā)布新的信息,服務(wù)器在接收到該用戶新發(fā)布的信息后,將新發(fā)布的信息直接添加到該用戶的發(fā)布信息列表中。
[0044]步驟S103:在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表;
[0045]用戶在使用社交網(wǎng)絡(luò)時,為了便于與所關(guān)注的人分享信息,每個用戶通常會維護(hù)一個自己的關(guān)聯(lián)用戶列表,將所關(guān)注的人納入其關(guān)聯(lián)用戶列表中,并可以在關(guān)聯(lián)用戶列表中隨時添加新的所關(guān)注的人,或者將不再關(guān)注的人從其關(guān)聯(lián)用戶列表中刪除。
[0046]具體地,當(dāng)用戶通過客戶端訪問該社交網(wǎng)絡(luò)時,客戶端會向服務(wù)器發(fā)出訪問請求。服務(wù)器在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表,例如在微博的運(yùn)用場景中,所述關(guān)聯(lián)用戶列表是指該用戶收聽的人所組成的用戶集合(即收聽用戶列表)。
[0047]步驟S104:分別從所述關(guān)聯(lián)用戶列表中的每個用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息;
[0048]具體地,以微博的運(yùn)用場景為例,用戶通過客戶端訪問微博時,服務(wù)器將分別從該用戶的每個收聽的人的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息。
[0049]步驟S105:將讀取的所有關(guān)聯(lián)用戶發(fā)布的信息返回至所述客戶端。
[0050]具體地,以微博的運(yùn)用場景為例,服務(wù)器在從每個收聽的人的發(fā)布信息列表中讀取信息之后,將讀取的所有收聽的人發(fā)布的信息返回至用戶的客戶端。
[0051]進(jìn)一步地,在接收到客戶端的訪問請求后還包括:從所述訪問請求指定的用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息并將讀取的信息返回至所述客戶端。具體地,以微博的運(yùn)用場景為例,服務(wù)器在接收到用戶客戶端的訪問請求后,還從該用戶自身的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息并將讀取的信息返回至用戶的客戶端。
[0052]進(jìn)一步地,還包括:在返回所述客戶端之前,對讀取的所述關(guān)聯(lián)用戶發(fā)布的信息以及所述訪問請求指定的用戶發(fā)布的信息進(jìn)行聚合及排序操作。具體地,以微博的運(yùn)用場景為例,服務(wù)器在將讀取的該用戶的每個收聽的人的發(fā)布的信息和該用戶自身發(fā)布的信息返回至客戶端之前,服務(wù)器還對這些信息進(jìn)行聚合到一起并進(jìn)行排序操作,例如以信息的發(fā)布時間的逆序進(jìn)行聚合,然后再返回客戶端。[0053]進(jìn)一步地,在返回所述客戶端之前,對聚合及排序后的信息進(jìn)行過濾操作,以過濾掉某些用戶不希望看到的信息內(nèi)容。具體地,用戶可以先設(shè)定過濾條件,服務(wù)器依照用戶設(shè)定的過濾條件對聚合及排序后的信息進(jìn)行過濾操作,返回的內(nèi)容則不含有用戶不希望看到的信息內(nèi)容。
[0054]上述實(shí)施例提供的社交網(wǎng)絡(luò)信息處理方式,不使用“寫擴(kuò)散”方式,改由各個用戶維護(hù)自己的一個發(fā)布信息列表,保存本用戶發(fā)表過的信息。例如以微博的運(yùn)用場景為例,客戶端的用戶通過聚合其收聽的人的發(fā)布信息列表和自己的發(fā)布信息列表就可以構(gòu)成用戶的個人首頁信息。這種方式稱為“讀擴(kuò)散”方式。
[0055]請參考圖4,圖4為本發(fā)明實(shí)施例提供的一種社交網(wǎng)絡(luò)信息處理系統(tǒng)的結(jié)構(gòu)圖;所述系統(tǒng)包括:
[0056]建立模塊401,用于針對每個用戶建立其發(fā)布信息列表;
[0057]寫入模塊402,用于將接收到的用戶新發(fā)布的信息添加至對應(yīng)用戶的發(fā)布信息列表中;
[0058]獲取模塊403,用于在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表;
[0059]讀取模塊404,用于分別從所述關(guān)聯(lián)用戶列表中的每個用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息;
[0060]返回模塊405,用于將讀取的所有關(guān)聯(lián)用戶發(fā)布的信息返回至所述客戶端。
[0061]進(jìn)一步地,所述讀取模塊404還用于在接收到客戶端的訪問請求后,從所述訪問請求指定的用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息并將讀取的信息返回至所述客戶端。
[0062]進(jìn)一步地,所述系統(tǒng)進(jìn)一步包括:聚合模塊406,用于對讀取的所述關(guān)聯(lián)用戶發(fā)布的信息以及所述訪問請求指定的用戶發(fā)布的信息進(jìn)行聚合及排序操作。
[0063]進(jìn)一步地,所述系統(tǒng)進(jìn)一步包括:過濾模塊407,用于對聚合及排序后的信息進(jìn)行過濾操作。
[0064]進(jìn)一步地,所述關(guān)聯(lián)用戶列表為所述訪問請求指定的用戶的收聽用戶列表。
[0065]關(guān)于本實(shí)施例的社交網(wǎng)絡(luò)信息處理系統(tǒng)的進(jìn)一步細(xì)節(jié),還可參閱圖2與圖3所示的社交網(wǎng)絡(luò)信息處理方法及相關(guān)描述。
[0066]上述實(shí)施例中提出的社交網(wǎng)絡(luò)信息處理方法及系統(tǒng),針對海量信息采取聚合拉取的實(shí)現(xiàn)方法,具有以下優(yōu)點(diǎn):
[0067](I)簡單,只有一次寫操作;
[0068](2)實(shí)時性高,用戶可以快速地進(jìn)行信息的分享,也可以快速的獲取到最新的信息。而對于用戶收聽列表過大的問題,可以選擇柔性的處理方式處理,但保證了不缺失數(shù)據(jù);
[0069](3)效率高,不會產(chǎn)生無效的操作,CPU和網(wǎng)絡(luò)帶寬的消耗是依賴于在線的用戶量,保證了最高的性價比;
[0070](4)運(yùn)維成本低,可擴(kuò)展性強(qiáng)。當(dāng)機(jī)器處理性能下降時,可通過增加機(jī)器分流支持;
[0071](5)機(jī)器故障影響面小,服務(wù)質(zhì)量高。當(dāng)服務(wù)進(jìn)程掛掉時,由于采用“讀擴(kuò)散”的方式,不會有寫的操作,因此不會影響數(shù)據(jù)的差異性,而獲取信息的計算可以快速的通過備機(jī)進(jìn)行處理。
[0072]需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0073]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機(jī)可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機(jī)存儲記憶體(Random AccessMemory, RAM)等。
[0074]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何`修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種社交網(wǎng)絡(luò)信息處理方法,其特征在于,包括: 針對每個用戶建立其發(fā)布信息列表; 將接收到的用戶新發(fā)布的信息添加至對應(yīng)用戶的發(fā)布信息列表中; 在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表; 分別從所述關(guān)聯(lián)用戶列表中的每個用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息;以及 將讀取的所有關(guān)聯(lián)用戶發(fā)布的信息返回至所述客戶端。
2.如權(quán)利要求1所述的社交網(wǎng)絡(luò)信息處理方法,其特征在于,在接收到客戶端的訪問請求后還包括: 從所述訪問請求指定的用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息并將讀取的信息返回至所述客戶端。
3.如權(quán)利要求2所述的社交網(wǎng)絡(luò)信息處理方法,其特征在于,還包括:在返回所述客戶端之前,對讀取的所述關(guān)聯(lián)用戶發(fā)布的信息以及所述訪問請求指定的用戶發(fā)布的信息進(jìn)行聚合及排序操作。
4.如權(quán)利要求3所述的社交網(wǎng)絡(luò)信息處理方法,其特征在于,還包括:在返回所述客戶端之前,對聚合及排序后的信息進(jìn)行過濾操作。
5.如權(quán)利要求1所述的社交網(wǎng)絡(luò)信息處理方法,其特征在于,所述關(guān)聯(lián)用戶列表為所述訪問請求指定的用戶的收聽用戶列表。
6.一種社交網(wǎng)絡(luò)信息處理系統(tǒng),其特征在于,包括: 建立模塊,用于針對每個用戶建立其發(fā)布信息列表; 寫入模塊,用于將接收到的用戶新發(fā)布的信息添加至對應(yīng)用戶的發(fā)布信息列表中;獲取模塊,用于在接收到客戶端的訪問請求后,獲取所述訪問請求指定的用戶的關(guān)聯(lián)用戶列表; 讀取模塊,用于分別從所述關(guān)聯(lián)用戶列表中的每個用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息; 返回模塊,用于將讀取的所有關(guān)聯(lián)用戶發(fā)布的信息返回至所述客戶端。
7.如權(quán)利要求6所述的社交網(wǎng)絡(luò)信息處理系統(tǒng),其特征在于,所述讀取模塊還用于在接收到客戶端的訪問請求后,從所述訪問請求指定的用戶的發(fā)布信息列表中讀取預(yù)定數(shù)量的信息并將讀取 的信息返回至所述客戶端。
8.如權(quán)利要求7所述的社交網(wǎng)絡(luò)信息處理系統(tǒng),其特征在于,所述系統(tǒng)進(jìn)一步包括: 聚合模塊,用于對讀取的所述關(guān)聯(lián)用戶發(fā)布的信息以及所述訪問請求指定的用戶發(fā)布的信息進(jìn)行聚合及排序操作。
9.如權(quán)利要求8所述的社交網(wǎng)絡(luò)信息處理系統(tǒng),其特征在于,所述系統(tǒng)進(jìn)一步包括: 過濾模塊,用于對所述聚合及排序后的信息進(jìn)行過濾操作。
10.如權(quán)利要求6所述的社交網(wǎng)絡(luò)信息處理系統(tǒng),其特征在于,所述關(guān)聯(lián)用戶列表為所述訪問請求指定的用戶的收聽用戶列表。
【文檔編號】H04L12/58GK103841001SQ201210478330
【公開日】2014年6月4日 申請日期:2012年11月22日 優(yōu)先權(quán)日:2012年11月22日
【發(fā)明者】吳宏杰, 田明, 李鐘偉 申請人:騰訊科技(深圳)有限公司