同步網(wǎng)絡數(shù)據(jù)的方法和系統(tǒng)的制作方法
【技術(shù)領域】
[0001]本發(fā)明涉及計算機技術(shù),特別是涉及一種同步網(wǎng)絡數(shù)據(jù)的方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著各種計算機應用的發(fā)展,越來越多地通過互聯(lián)網(wǎng)絡進行各種網(wǎng)絡數(shù)據(jù)的同步,以為用戶提供越來越豐富的功能。例如,大眾所熟知的即時通信工具中,常常通過用戶狀態(tài)信息的同步來使得用戶在發(fā)送信息之前可隨意查看即時通信工具中的聯(lián)系人是否在線。
[0003]但是,隨著用戶地域分布的擴大,將需要在全國范圍,甚至于全世界范圍內(nèi)進行海量的網(wǎng)絡數(shù)據(jù)同步。而現(xiàn)有的網(wǎng)絡數(shù)據(jù)同步中大都采用集中式的同步方式,也就是說,所有的網(wǎng)絡數(shù)據(jù)都將被上報至統(tǒng)一的服務器中,需要進行網(wǎng)絡數(shù)據(jù)同步的用戶也將從這一服務器中獲取得到網(wǎng)絡數(shù)據(jù),以實現(xiàn)網(wǎng)絡數(shù)據(jù)的同步。
[0004]然而,這一現(xiàn)有的網(wǎng)絡數(shù)據(jù)同步方式存在著同步緩慢且浪費網(wǎng)絡資源的缺陷。例如,用戶A和用戶B在同一個地區(qū)使用了即時通信工具進行聊天,但是,用戶A的網(wǎng)絡數(shù)據(jù),即用戶狀態(tài)信息卻要先上報至放置于另一地區(qū)的服務器中,然后再跨地區(qū)傳遞至用戶B的即時通信工具中,進而使得用戶B的即時通信工具所顯示的用戶A在線或離線的狀態(tài)將是不準確的。
【發(fā)明內(nèi)容】
[0005]基于此,有必要針對傳統(tǒng)的網(wǎng)絡數(shù)據(jù)同步中存在的同步緩慢且浪費網(wǎng)絡資源的技術(shù)問題,提供一種能迅速同步網(wǎng)絡數(shù)據(jù)且節(jié)省網(wǎng)絡資源的同步網(wǎng)絡數(shù)據(jù)的方法。
[0006]此外,還有必要提供一種能迅速同步網(wǎng)絡數(shù)據(jù)且節(jié)省網(wǎng)絡資源的同步網(wǎng)絡數(shù)據(jù)的系統(tǒng)。
[0007]一種同步網(wǎng)絡數(shù)據(jù)的方法,包括如下步驟:
[0008]接收同步數(shù)據(jù)包,從所述同步數(shù)據(jù)包提取上一跳地區(qū)組標識;
[0009]根據(jù)所述上一跳地區(qū)組標識和當前所在地區(qū)組的下一跳地區(qū)組將所述同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至所述當前所在地區(qū)組的下一跳地區(qū)組中;
[0010]其中,所述地區(qū)組將分別與網(wǎng)絡數(shù)據(jù)同步相關的若干個地域相對應。
[0011]一種同步網(wǎng)絡數(shù)據(jù)的方法,包括如下步驟:
[0012]接收同步數(shù)據(jù)包,從所述同步數(shù)據(jù)包中提取上一跳地區(qū)組標識;
[0013]判斷所述提取的上一跳地區(qū)組標識是否與當前所在地區(qū)組的下一跳地區(qū)組相符,若為是,則
[0014]根據(jù)當前所在地區(qū)組中第一地區(qū)的同步數(shù)據(jù)包所包含的原始地區(qū)組標識,將所述同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至所述第一地區(qū)的下一跳地區(qū);
[0015]其中,所述地區(qū)組將分別與網(wǎng)絡數(shù)據(jù)同步相關的若干個地域相對應,所述第一地區(qū)和下一跳地區(qū)均配置于當前所在地區(qū)組中。
[0016]一種同步網(wǎng)絡數(shù)據(jù)的系統(tǒng),包括:
[0017]接收模塊,用于接收同步數(shù)據(jù)包,從所述同步數(shù)據(jù)包提取上一跳地區(qū)組標識;
[0018]同步處理模塊,用于根據(jù)所述上一跳地區(qū)標識和當前所在地區(qū)組的下一跳地區(qū)組將所述同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至所述當前所在地區(qū)組的下一跳地區(qū)組中;
[0019]其中,所述地區(qū)組將分別與網(wǎng)絡數(shù)據(jù)同步相關的若干個地域相對應。
[0020]上述同步網(wǎng)絡數(shù)據(jù)的方法和系統(tǒng)中,在接收到同步數(shù)據(jù)包時將從同步數(shù)據(jù)包中提取上一跳地區(qū)組標識,根據(jù)上一跳地區(qū)組標識和當前所在地區(qū)組的下一跳地區(qū)組將同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至當前所在地區(qū)組的下一跳地區(qū)組中,極大地最小化了地區(qū)組之間的網(wǎng)絡總流量,并且由于地區(qū)組是分別與網(wǎng)絡數(shù)據(jù)同步相關的若干個地域相對應的,因此保證了各個地域之間網(wǎng)絡數(shù)據(jù)的快速同步,實現(xiàn)了迅速同步網(wǎng)絡數(shù)據(jù)且節(jié)省網(wǎng)絡資源的目的。
【附圖說明】
[0021]圖1為一個實施例中同步網(wǎng)絡數(shù)據(jù)的方法流程圖;
[0022]圖2為圖1中根據(jù)上一跳地區(qū)組標識和當前所在地區(qū)組的下一跳地區(qū)組將同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至當前所在地區(qū)組的下一跳地區(qū)組中的方法流程圖;
[0023]圖3為圖2中根據(jù)當前所在地區(qū)組中第一地區(qū)的同步數(shù)據(jù)包所包含的原始地區(qū)組標識,將同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至第一地區(qū)的下一跳地區(qū)的方法流程圖;
[0024]圖4為一個實施例中地區(qū)組的拓撲圖;
[0025]圖5為一個實施例中地區(qū)的拓撲圖;
[0026]圖6為一個實施例中進行地區(qū)組內(nèi)同步數(shù)據(jù)的同步網(wǎng)絡數(shù)據(jù)的方法流程圖;
[0027]圖7為圖6中根據(jù)當前所在地區(qū)組中第一地區(qū)的同步數(shù)據(jù)包所包含的原始地區(qū)組標識,將同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至第一地區(qū)的下一跳地區(qū)的方法流程圖;
[0028]圖8為一個實施例中同步網(wǎng)絡數(shù)據(jù)的系統(tǒng)結(jié)構(gòu)示意圖;
[0029]圖9為圖8中同步處理模塊的結(jié)構(gòu)示意圖;
[0030]圖10為圖9中地區(qū)同步單元的結(jié)構(gòu)示意圖;
[0031]圖11為一個實施例中運行同步網(wǎng)絡數(shù)據(jù)的方法的服務器結(jié)構(gòu)示意圖。
【具體實施方式】
[0032]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0033]除非上下文另有特定清楚的描述,本發(fā)明中的元件和組件,數(shù)量既可以單個的形式存在,也可以多個的形式存在,本發(fā)明并不對此進行限定。本發(fā)明中的步驟雖然用標號進行了排列,但并不用于限定步驟的先后次序,除非明確說明了步驟的次序或者某步驟的執(zhí)行需要其他步驟作為基礎,否則步驟的相對次序是可以調(diào)整的??梢岳斫?,本文中所使用的術(shù)語“和/或”涉及且涵蓋相關聯(lián)的所列項目中的一者或一者以上的任何和所有可能的組口 ο
[0034]如圖1所示,在一個實施例中,一種同步網(wǎng)絡數(shù)據(jù)的方法,包括如下步驟:
[0035]步驟S10,接收同步數(shù)據(jù)包,從同步數(shù)據(jù)包提取上一跳地區(qū)組標識。
[0036]本實施例中,同步數(shù)據(jù)包的傳遞將用于實現(xiàn)地區(qū)組之間以及地區(qū)組內(nèi)的網(wǎng)絡數(shù)據(jù)同步,進行同步數(shù)據(jù)包接收的地區(qū)組將是根據(jù)與網(wǎng)絡數(shù)據(jù)同步相關的若干個地域配置的,每一地區(qū)組均包括了若干個服務器。
[0037]同步數(shù)據(jù)包由上一跳地區(qū)組傳遞至當前所在地區(qū)組,此時,當前所在地區(qū)組將接收到同步數(shù)據(jù)包,并由接收的同步數(shù)據(jù)包中提取得到上一跳地區(qū)組標識,該上一跳地區(qū)組標識為同步數(shù)據(jù)包中的字段,例如,同步數(shù)據(jù)包中的LastRG字段,用于對傳遞了同步數(shù)據(jù)包的上一跳地區(qū)組進行標識,其中,當前所在地區(qū)組為配置的若干個地區(qū)組中的任意一個。
[0038]步驟S30,根據(jù)上一跳地區(qū)組標識和當前所在地區(qū)組的下一跳地區(qū)組將同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)同步至當前所在地區(qū)組的下一跳地區(qū)組中。
[0039]本實施例中,同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)可以是用戶狀態(tài)信息,也可以是用戶發(fā)布的各種消息,在此不一一進行列舉,網(wǎng)絡數(shù)據(jù)的具體內(nèi)容將根據(jù)實際的應用場景相對應。例如,在即時通信工具中,同步數(shù)據(jù)包中的網(wǎng)絡數(shù)據(jù)即為用戶狀態(tài)信息,以實現(xiàn)即時通信工具中各聯(lián)系人在線或者離線狀態(tài)的同步。
[0040]進一步的,地區(qū)組將分別與網(wǎng)絡數(shù)據(jù)同步相關的若干個地域相對應。根據(jù)網(wǎng)絡數(shù)據(jù)所需要進行同步的地域范圍進行劃分,以得到若干個地域,進而在每一地域配置與之對應的地區(qū)組,即服務器群組,以便于通過地區(qū)組實現(xiàn)地域之間以及地域中的網(wǎng)絡數(shù)據(jù)同步。
[0041]例如,根據(jù)網(wǎng)絡數(shù)據(jù)所需要進行同步的地域范圍為全世界,此時,可將全世界劃分為中國北方地域、中國南方地域、東南亞地域和美國地域,相應的,將為這四個地域分別配置中國北方地區(qū)組、中國南方地區(qū)組、東南亞地區(qū)組和美國地區(qū)組。
[0042]進一步的,所有地區(qū)組之間,將使用最小連接樹策略進行網(wǎng)絡數(shù)據(jù)的同步,即任意兩個地區(qū)組之間,有且僅有一種相通路徑,例如,從中國北方地區(qū)組到美國地區(qū)組則必須經(jīng)過中國南方地區(qū)組,別無它徑,以最小化地區(qū)組之間的網(wǎng)絡總流量