一種跨平臺數(shù)據(jù)管理方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明實施例提供了一種跨平臺數(shù)據(jù)管理方法和系統(tǒng),以解決無法保證兩個平臺上數(shù)據(jù)的同步性的問題。本發(fā)明實施例通過對應(yīng)用中的數(shù)據(jù)進行拆分,并且對服務(wù)器架構(gòu)進行修改,將數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù),平臺A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器。其中,平臺A服務(wù)器和平臺B服務(wù)器通過中樞服務(wù)器進行數(shù)據(jù)中轉(zhuǎn),因此,當(dāng)其中一個平臺對另一個平臺的數(shù)據(jù)進行修改之后,可以通過中樞服務(wù)器實時將修改后的數(shù)據(jù)轉(zhuǎn)發(fā)至所述另一個平臺的服務(wù)器,從而可以確保平臺A和平臺B數(shù)據(jù)的同步性。
【專利說明】一種跨平臺數(shù)據(jù)管理方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明實施例涉及網(wǎng)絡(luò)數(shù)據(jù)處理【技術(shù)領(lǐng)域】,特別是涉及一種跨平臺數(shù)據(jù)管理方法 和系統(tǒng)。
【背景技術(shù)】
[0002] 同一個賬戶可以在不同平臺運行不同的應(yīng)用,例如可以同時在平臺A運行平臺A 應(yīng)用和在平臺B運行平臺B應(yīng)用。如果其中一個平臺的應(yīng)用需要調(diào)用另一個平臺的應(yīng)用中 的數(shù)據(jù),則要進行跨平臺數(shù)據(jù)讀取。
[0003] 以游戲為例,同一個賬戶可以分別在平臺A和平臺B運行游戲,可以將平臺A游戲 的服務(wù)器稱為平臺A服務(wù)器,將平臺B游戲的服務(wù)器稱為平臺B服務(wù)器。游戲中的跨平臺 數(shù)據(jù)讀取方式主要包括以下兩種:
[0004] 方式一:在線數(shù)據(jù)讀取
[0005] 當(dāng)在平臺A和平臺B上同時運行游戲時,如果平臺B向平臺A發(fā)起數(shù)據(jù)請求,則利 用服務(wù)器上的數(shù)據(jù)讀取功能,平臺A服務(wù)器從平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫中讀取數(shù)據(jù),然后 通過平臺A服務(wù)器將數(shù)據(jù)轉(zhuǎn)發(fā)至平臺B服務(wù)器。
[0006] 但是,平臺B上的游戲只能通過平臺A服務(wù)器讀取平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫中 的數(shù)據(jù),而不具有向平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫寫數(shù)據(jù)的權(quán)限。因此,如果在平臺B上對數(shù) 據(jù)進行了修改,則無法將修改后的數(shù)據(jù)寫入平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫中,從而導(dǎo)致用戶 在平臺A服務(wù)器和平臺B服務(wù)器的數(shù)據(jù)不一致。
[0007] 方式二:備份數(shù)據(jù)讀取
[0008] 當(dāng)在平臺A和平臺B上同時運行游戲時,平臺A服務(wù)器從平臺A對應(yīng)的服務(wù)器數(shù) 據(jù)庫中讀取數(shù)據(jù),由平臺A服務(wù)器將讀取的數(shù)據(jù)制作快照并存儲于獨立數(shù)據(jù)庫中。當(dāng)平臺 B向平臺A發(fā)起數(shù)據(jù)請求時,平臺B服務(wù)器從上述獨立數(shù)據(jù)庫中讀取數(shù)據(jù)。
[0009] 但是,平臺B服務(wù)器讀取的是存儲于獨立數(shù)據(jù)庫中的快照數(shù)據(jù),此部分?jǐn)?shù)據(jù)并不 是實時數(shù)據(jù),同樣無法保證兩個平臺服務(wù)器數(shù)據(jù)的一致性。而且為了防止出現(xiàn)數(shù)據(jù)混亂,該 部分快照數(shù)據(jù)不能回寫到原有平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫中。
[0010] 綜上所述,上述兩種跨平臺數(shù)據(jù)讀取方式對于同一個賬戶的數(shù)據(jù)會存在于同時運 行中的不同服務(wù)器中,無法保證兩個平臺上數(shù)據(jù)的同步性,對于應(yīng)用的運行過程(如用戶游 戲過程)會產(chǎn)生影響。
【發(fā)明內(nèi)容】
[0011] 本發(fā)明實施例所要解決的技術(shù)問題是提供一種跨平臺數(shù)據(jù)管理方法和系統(tǒng),以解 決無法保證兩個平臺上數(shù)據(jù)的同步性的問題。
[0012] 為了解決上述問題,本發(fā)明公開了一種跨平臺數(shù)據(jù)管理方法,其特征在于,包括:
[0013] 將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);其中,平臺A數(shù)據(jù)存 儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器;
[0014] 平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,從平臺B服務(wù) 器讀取平臺B數(shù)據(jù);
[0015] 當(dāng)平臺A客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺A客戶端依次通過平臺A 服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺B服務(wù)器。
[0016] 可選地,所述方法還包括:
[0017] 平臺A客戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,從中樞服務(wù)器讀取公用數(shù) 據(jù);
[0018] 當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺B客戶端對所述公用數(shù)據(jù) 進行修改;
[0019] 當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改之后,平臺A客戶端依次通過平臺A服 務(wù)器和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,并且允許平臺B客戶端對所述 公用數(shù)據(jù)進行修改。
[0020] 可選地,所述平臺A客戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,將修改后的公用 數(shù)據(jù)寫入中樞服務(wù)器,包括:
[0021] 平臺A客戶端將修改后的公用數(shù)據(jù)寫入平臺A服務(wù)器,平臺A服務(wù)器將所述修改 后的公用數(shù)據(jù)反饋至中樞服務(wù)器。
[0022] 可選地,所述平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器, 從平臺B服務(wù)器讀取平臺B數(shù)據(jù),包括 :
[0023] 平臺A客戶端向平臺A服務(wù)器發(fā)送獲取平臺B數(shù)據(jù)的請求,平臺A服務(wù)器將所述 獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器,通過中樞服務(wù)器將所述獲取平臺B數(shù)據(jù)的請求 轉(zhuǎn)發(fā)至平臺B服務(wù)器;
[0024] 平臺B服務(wù)器將所述平臺B數(shù)據(jù)反饋至中樞服務(wù)器,通過中樞服務(wù)器將所述平臺 B數(shù)據(jù)反饋至平臺A服務(wù)器,平臺A服務(wù)器將所述平臺B數(shù)據(jù)反饋至平臺A客戶端。
[0025] 可選地,所述平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器, 將修改后的平臺B數(shù)據(jù)寫入平臺B服務(wù)器,包括 :
[0026] 平臺A客戶端將修改后的平臺B數(shù)據(jù)寫入平臺A服務(wù)器,平臺A服務(wù)器將所述修 改后的平臺B數(shù)據(jù)反饋至中樞服務(wù)器,通過中樞服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至 平臺B服務(wù)器。
[0027] 另一方面,本發(fā)明還公開了一種跨平臺數(shù)據(jù)管理系統(tǒng),其特征在于,包括:
[0028] 拆分模塊,用于將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);其中, 平臺A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服 務(wù)器;
[0029] 跨平臺讀取模塊,用于平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B 服務(wù)器,從平臺B服務(wù)器讀取平臺B數(shù)據(jù);
[0030] 跨平臺寫入模塊,用于當(dāng)平臺A客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺A客 戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺 B服務(wù)器。
[0031] 可選地,所述系統(tǒng)還包括:
[0032] 公用讀取模塊,用于平臺A客戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,從中樞服 務(wù)器讀取公用數(shù)據(jù);
[0033] 禁止模塊,用于當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺B客戶端對 所述公用數(shù)據(jù)進行修改;
[0034] 公用寫入模塊,用于當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改之后,平臺A客戶端 依次通過平臺A服務(wù)器和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,并且允許平 臺B客戶端對所述公用數(shù)據(jù)進行修改。
[0035] 可選地,所述公用寫入模塊包括:
[0036] 公用寫入子模塊,用于平臺A客戶端將修改后的公用數(shù)據(jù)寫入平臺A服務(wù)器; [0037] 公用反饋子模塊,用于平臺A服務(wù)器將所述修改后的公用數(shù)據(jù)反饋至中樞服務(wù) 器。
[0038] 可選地,所述跨平臺讀取模塊包括:
[0039] 跨平臺轉(zhuǎn)發(fā)子模塊,用于平臺A客戶端向平臺A服務(wù)器發(fā)送獲取平臺B數(shù)據(jù)的請 求,平臺A服務(wù)器將所述獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器,通過中樞服務(wù)器將所述 獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至平臺B服務(wù)器;
[0040] 第一跨平臺反饋子模塊,用于平臺B服務(wù)器將所述平臺B數(shù)據(jù)反饋至中樞服務(wù)器, 通過中樞服務(wù)器將所述平臺B數(shù)據(jù)反饋至平臺A服務(wù)器,平臺A服務(wù)器將所述平臺B數(shù)據(jù) 反饋至平臺A客戶端。
[0041] 可選地,所述跨平臺寫入模塊包括:
[0042] 平臺內(nèi)寫入子模塊,用于平臺A客戶端將修改后的平臺B數(shù)據(jù)寫入平臺A服務(wù)器;
[0043] 第二跨平臺反饋子模塊,用于平臺A服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至中 樞服務(wù)器,通過中樞服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至平臺B服務(wù)器。
[0044] 與現(xiàn)有技術(shù)相比,本發(fā)明實施例包括以下優(yōu)點:
[0045] 首先,本發(fā)明實施例通過對應(yīng)用中的數(shù)據(jù)進行拆分,并且對服務(wù)器架構(gòu)進行修改, 將數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù),平臺A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺 B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器。其中,平臺A服務(wù)器和平臺B服 務(wù)器通過中樞服務(wù)器進行數(shù)據(jù)中轉(zhuǎn),因此,當(dāng)其中一個平臺對另一個平臺的數(shù)據(jù)進行修改 之后,可以通過中樞服務(wù)器實時將修改后的數(shù)據(jù)轉(zhuǎn)發(fā)至所述另一個平臺的服務(wù)器,從而可 以確保平臺A和平臺B數(shù)據(jù)的同步性。
[0046] 其次,本發(fā)明實施例中對于中樞服務(wù)器上的公用數(shù)據(jù),當(dāng)其中一個平臺對公用數(shù) 據(jù)進行修改時,可以禁止另一個平臺對公用數(shù)據(jù)進行修改,從而可以避免兩個平臺同時對 公用數(shù)據(jù)進行修改而造成數(shù)據(jù)混亂的問題。
【專利附圖】
【附圖說明】
[0047] 圖1是本發(fā)明實施例一所述的一種跨平臺數(shù)據(jù)管理方法的流程圖;
[0048] 圖2是本發(fā)明實施例二所述的一種跨平臺數(shù)據(jù)管理方法的流程圖;
[0049] 圖3是本發(fā)明實施例二所述的數(shù)據(jù)處理流程的示意圖;
[0050] 圖4是本發(fā)明實施例三所述的客戶端游戲和網(wǎng)頁游戲結(jié)合的整體結(jié)構(gòu)圖;
[0051] 圖5是本發(fā)明實施例四所述的一種跨平臺數(shù)據(jù)管理系統(tǒng)的結(jié)構(gòu)框圖。
【具體實施方式】
[0052] 為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實 施方式對本發(fā)明作進一步詳細(xì)的說明。
[0053] 實施例一:
[0054] 當(dāng)同一個賬戶分別在平臺A和平臺B運行不同的應(yīng)用時,如果需要跨平臺讀取數(shù) 據(jù),則可以包括以下兩種方式 :
[0055] 方式一:在線數(shù)據(jù)讀取
[0056] 當(dāng)在平臺A和平臺B上同時運行不同的應(yīng)用時,如果平臺B向平臺A發(fā)起數(shù)據(jù)請 求,則利用服務(wù)器上的數(shù)據(jù)讀取功能,平臺A服務(wù)器從平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫中讀取數(shù) 據(jù),然后通過平臺A服務(wù)器將數(shù)據(jù)轉(zhuǎn)發(fā)至平臺B服務(wù)器。
[0057] 方式二:備份數(shù)據(jù)讀取
[0058] 當(dāng)在平臺A和平臺B上同時運行不同的應(yīng)用時,平臺A服務(wù)器從平臺A對應(yīng)的服務(wù) 器數(shù)據(jù)庫中讀取數(shù)據(jù),由平臺A服務(wù)器將讀取的數(shù)據(jù)制作快照并存儲于獨立數(shù)據(jù)庫中。當(dāng) 平臺B向平臺A發(fā)起數(shù)據(jù)請求時,平臺B服務(wù)器從上述獨立數(shù)據(jù)庫中讀取數(shù)據(jù)。
[0059] 但是,上述兩種跨平臺數(shù)據(jù)讀取方式對于同一個賬戶的數(shù)據(jù)會存在于同時運行中 的不同服務(wù)器中,無法保證兩個平臺上數(shù)據(jù)的同步性,對于應(yīng)用的運行過程會產(chǎn)生影響。
[0060] 例如,對于方式一,平臺B上的應(yīng)用只能通過平臺A服務(wù)器讀取平臺A對應(yīng)的服務(wù) 器數(shù)據(jù)庫中的數(shù)據(jù),而不具有向平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫寫數(shù)據(jù)的權(quán)限。因此,如果在平 臺B上對數(shù)據(jù)進行了修改,則無法將修改后的數(shù)據(jù)寫入平臺A對應(yīng)的服務(wù)器數(shù)據(jù)庫中,從而 導(dǎo)致用戶在平臺A服務(wù)器和平臺B服務(wù)器的數(shù)據(jù)不一致;對于方式二,平臺B服務(wù)器讀取的 是存儲于獨立數(shù)據(jù)庫中的快照數(shù)據(jù),此部分?jǐn)?shù)據(jù)并不是實時數(shù)據(jù),同樣無法保證兩個平臺 服務(wù)器數(shù)據(jù)的一致性。
[0061] 因此,針對上述問題,本發(fā)明實施例提出了一種跨平臺數(shù)據(jù)管理方法,該方法可以 通過中樞服務(wù)器實現(xiàn)兩個平臺之間數(shù)據(jù)的實時同步。
[0062] 參照圖1,示出了本發(fā)明實施例一所述的一種跨平臺數(shù)據(jù)管理方法的流程圖,所述 方法可以包括 :
[0063] 步驟101,將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);其中,平臺 A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器。
[0064] 本發(fā)明實施例中,首先可以將應(yīng)用中的數(shù)據(jù)進行拆分,具體可以拆分為平臺A數(shù) 據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);然后對服務(wù)器架構(gòu)進行設(shè)置,分別設(shè)置平臺A服務(wù)器,平臺B服 務(wù)器和中樞服務(wù)器;最后,分別將平臺A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺 B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器。
[0065] 由于在不同平臺上運行的兩個應(yīng)用,其各自對應(yīng)的服務(wù)器之間是不能實時通信 的。因此,本發(fā)明實施例設(shè)置了中樞服務(wù)器,平臺A服務(wù)器和平臺B服務(wù)器可以通過中樞服 務(wù)器進行數(shù)據(jù)中轉(zhuǎn)。
[0066] 本發(fā)明實施例中,可以根據(jù)兩個平臺對于數(shù)據(jù)的需求進行數(shù)據(jù)拆分,按照哪個平 臺對數(shù)據(jù)進行修改,數(shù)據(jù)隸屬于哪個平臺將數(shù)據(jù)拆分為平臺A數(shù)據(jù)和平臺B數(shù)據(jù),而對于兩 個平臺均會進行讀取或修改的數(shù)據(jù),則作為共用數(shù)據(jù)。
[0067] 當(dāng)然,還可以通過其他方式對應(yīng)用中的數(shù)據(jù)進行拆分,本發(fā)明實施例對此并不加 以限制。
[0068] 步驟102,平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,從平 臺B服務(wù)器讀取平臺B數(shù)據(jù)。
[0069] 當(dāng)經(jīng)過上述步驟101對數(shù)據(jù)和服務(wù)器架構(gòu)進行處理之后,當(dāng)需要跨平臺讀取數(shù)據(jù) 時(例如,平臺A向平臺B請求數(shù)據(jù)),平臺A客戶端即可依次通過平臺A服務(wù)器、中樞服務(wù) 器和平臺B服務(wù)器,從平臺B服務(wù)器讀取平臺B數(shù)據(jù)。
[0070] 步驟103,當(dāng)平臺A客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺A客戶端依次通 過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺B服務(wù)器。
[0071] 平臺A客戶端在獲取到平臺B數(shù)據(jù)之后,可以使用該平臺B數(shù)據(jù)進行應(yīng)用運行中 的運算等操作。如果在使用過程中平臺A客戶端對平臺B數(shù)據(jù)進行了修改,則平臺A客戶 端可以實施將修改后的數(shù)據(jù)返回給平臺B服務(wù)器,以保證兩個平臺數(shù)據(jù)的同步性。
[0072] 由于平臺A客戶端是不能直接將修改后的數(shù)據(jù)通過平臺A服務(wù)器寫入平臺B服務(wù) 器中的,因此,本發(fā)明實施例中設(shè)置了中樞服務(wù)器,平臺A客戶端可以依次通過平臺A服務(wù) 器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺B服務(wù)器。
[0073] 需要說明的是,上述步驟102和步驟103中主要是介紹平臺A向平臺B請求數(shù)據(jù), 并將修改后的數(shù)據(jù)返回給平臺B服務(wù)器的過程。對于平臺B向平臺A請求數(shù)據(jù),并將修改 后的數(shù)據(jù)返回給平臺A服務(wù)器的過程與上述過程是相似的,本發(fā)明實施例在此不再詳細(xì)論 述。
[0074] 本發(fā)明實施例中,平臺A服務(wù)器和平臺B服務(wù)器可以通過中樞服務(wù)器進行數(shù)據(jù)中 轉(zhuǎn),因此,當(dāng)其中一個平臺對另一個平臺的數(shù)據(jù)進行修改之后,可以通過中樞服務(wù)器實時將 修改后的數(shù)據(jù)轉(zhuǎn)發(fā)至所述另一個平臺的服務(wù)器,從而可以確保平臺A和平臺B數(shù)據(jù)的同步 性。
[0075] 實施例二:
[0076] 本實施例二中,將詳細(xì)論述所述跨平臺數(shù)據(jù)管理方法。
[0077] 參照圖2,示出了本發(fā)明實施例二所述的一種跨平臺數(shù)據(jù)管理方法的流程圖,所述 方法可以包括:
[0078] 步驟201,將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);其中,平臺 A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器。
[0079] 經(jīng)過上述處理之后,數(shù)據(jù)的處理流程將會發(fā)生變化,如圖3所示,為本發(fā)明實施例 二所述的數(shù)據(jù)處理流程的示意圖,其中,原始數(shù)據(jù)即為上述應(yīng)用中的數(shù)據(jù)。
[0080] 從圖3可以看出,進行數(shù)據(jù)拆分和服務(wù)器架構(gòu)設(shè)置之后,可以包括3種數(shù)據(jù)請求方 式:平臺內(nèi)請求(平臺內(nèi)數(shù)據(jù)處理)、公用數(shù)據(jù)請求(公用數(shù)據(jù)處理)和跨平臺數(shù)據(jù)請求(跨平 臺數(shù)據(jù)處理)。
[0081] 圖3中以平臺A客戶端發(fā)請求為例,其中,
[0082] 平臺內(nèi)請求:平臺A客戶端向平臺A服務(wù)器發(fā)送數(shù)據(jù)請求,平臺A服務(wù)器根據(jù)數(shù)據(jù) 請求將平臺A數(shù)據(jù)反饋給平臺A客戶端。
[0083] 公用數(shù)據(jù)請求:平臺A客戶端向平臺A服務(wù)器發(fā)送數(shù)據(jù)請求,平臺A服務(wù)器將數(shù)據(jù) 請求轉(zhuǎn)發(fā)至中樞服務(wù)器,中樞服務(wù)器根據(jù)數(shù)據(jù)請求將公用數(shù)據(jù)反饋給平臺A服務(wù)器,平臺A 服務(wù)器再將所述公用數(shù)據(jù)反饋給平臺A客戶端。
[0084] 跨平臺數(shù)據(jù)請求:平臺A客戶端向平臺A服務(wù)器發(fā)送數(shù)據(jù)請求,平臺A服務(wù)器將數(shù) 據(jù)請求轉(zhuǎn)發(fā)至中樞服務(wù)器,中樞服務(wù)器將數(shù)據(jù)請求轉(zhuǎn)發(fā)至平臺B服務(wù)器,平臺B服務(wù)器根據(jù) 數(shù)據(jù)請求將平臺B數(shù)據(jù)反饋給中樞服務(wù)器,中樞服務(wù)器將所述平臺B數(shù)據(jù)反饋給平臺A服 務(wù)器,平臺A服務(wù)器再將所述平臺B數(shù)據(jù)反饋給平臺A客戶端。
[0085] 對于平臺B客戶端發(fā)請求的情況,與上述過程基本相似,本發(fā)明實施例在此不再 詳細(xì)論述。
[0086] 需要說明的是,圖3中只描述了請求數(shù)據(jù)的情況,對于修改數(shù)據(jù)的情況,將在下面 的步驟中詳細(xì)論述。
[0087] 根據(jù)圖3所示的情況,本發(fā)明實施例所述的跨平臺數(shù)據(jù)管理方法還包括以下步 驟:
[0088] 步驟202,平臺A客戶端從平臺A服務(wù)器讀取平臺A數(shù)據(jù)。
[0089] 步驟203,當(dāng)平臺A客戶端對所述平臺A數(shù)據(jù)進行修改之后,平臺A客戶端將將修 改后的平臺A數(shù)據(jù)寫入平臺A服務(wù)器。
[0090] 上述步驟202和步驟203即為圖3中的平臺內(nèi)數(shù)據(jù)處理的情況。
[0091] 步驟204,平臺A客戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,從中樞服務(wù)器讀取 公用數(shù)據(jù)。
[0092] 該步驟204可以包括:
[0093] al,平臺A客戶端向平臺A服務(wù)器發(fā)送獲取公用數(shù)據(jù)的請求,平臺A服務(wù)器將所述 獲取公用數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器;
[0094] a2,中樞服務(wù)器將所述公用數(shù)據(jù)反饋至平臺A服務(wù)器,平臺A服務(wù)器將所述平臺B 數(shù)據(jù)反饋至平臺A客戶端。
[0095] 步驟205,當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺B客戶端對所述 公用數(shù)據(jù)進行修改。
[0096] 本發(fā)明實施例中,為了避免兩個平臺同時對公用數(shù)據(jù)進行修改而造成數(shù)據(jù)混亂的 問題,可以在平臺A客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺B客戶端對所述公用數(shù)據(jù) 進行修改,即在同一時間只有一個平臺可以對公用數(shù)據(jù)進行修改。
[0097] 步驟206,當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改之后,平臺A客戶端依次通過 平臺A服務(wù)器和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,并且允許平臺B客戶端 對所述公用數(shù)據(jù)進行修改。
[0098] 該步驟206可以包括:
[0099] bl,平臺A客戶端將修改后的公用數(shù)據(jù)寫入平臺A服務(wù)器;
[0100] b2,平臺A服務(wù)器將所述修改后的公用數(shù)據(jù)反饋至中樞服務(wù)器。
[0101] 上述步驟204-步驟206即為圖3中的公用數(shù)據(jù)處理的情況。
[0102] 步驟207,平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,從平 臺B服務(wù)器讀取平臺B數(shù)據(jù)。
[0103] 該步驟207可以包括:
[0104] c 1,平臺A客戶端向平臺A服務(wù)器發(fā)送獲取平臺B數(shù)據(jù)的請求,平臺A服務(wù)器將所 述獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器,通過中樞服務(wù)器將所述獲取平臺B數(shù)據(jù)的請 求轉(zhuǎn)發(fā)至平臺B服務(wù)器;
[0105] c2,平臺B服務(wù)器將所述平臺B數(shù)據(jù)反饋至中樞服務(wù)器,通過中樞服務(wù)器將所述平 臺B數(shù)據(jù)反饋至平臺A服務(wù)器,平臺A服務(wù)器將所述平臺B數(shù)據(jù)反饋至平臺A客戶端。
[0106] 步驟208,當(dāng)平臺A客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺A客戶端依次通 過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺B服務(wù)器。
[0107] 該步驟208可以包括:
[0108] dl,平臺A客戶端將修改后的平臺B數(shù)據(jù)寫入平臺A服務(wù)器;
[0109] d2,平臺A服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至中樞服務(wù)器,通過中樞服務(wù)器 將所述修改后的平臺B數(shù)據(jù)反饋至平臺B服務(wù)器。
[0110] 上述步驟207-步驟208即為圖3中的跨平臺數(shù)據(jù)處理的情況。
[0111] 需要說明的是,上述步驟201-步驟208是針對平臺A-側(cè)的跨平臺數(shù)據(jù)的管理方 法進行的介紹,對于平臺B -側(cè)與上述過程基本相似,可以包括以下步驟:
[0112] A,將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);其中,平臺A數(shù)據(jù) 存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器。
[0113] B,平臺B客戶端從平臺B服務(wù)器讀取平臺B數(shù)據(jù)。
[0114] C,當(dāng)平臺B客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺B客戶端將將修改后的 平臺B數(shù)據(jù)寫入平臺B服務(wù)器。
[0115] D,平臺B客戶端依次通過平臺B服務(wù)器和中樞服務(wù)器,從中樞服務(wù)器讀取公用數(shù) 據(jù)。
[0116] E,當(dāng)平臺B客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺A客戶端對所述公用數(shù) 據(jù)進行修改。
[0117] F,當(dāng)平臺B客戶端對所述公用數(shù)據(jù)進行修改之后,平臺B客戶端依次通過平臺B 服務(wù)器和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,并且允許平臺A客戶端對所 述公用數(shù)據(jù)進行修改。
[0118] G,平臺B客戶端依次通過平臺B服務(wù)器、中樞服務(wù)器和平臺A服務(wù)器,從平臺A服 務(wù)器讀取平臺A數(shù)據(jù)。
[0119] H,當(dāng)平臺B客戶端對所述平臺A數(shù)據(jù)進行修改之后,平臺B客戶端依次通過平臺 B服務(wù)器、中樞服務(wù)器和平臺A服務(wù)器,將修改后的平臺A數(shù)據(jù)寫入平臺A服務(wù)器。
[0120] 對于上述A-Η各個步驟的具體過程,參照步驟201-步驟208的相關(guān)描述即可,本 發(fā)明實施例在此不再詳細(xì)論述。
[0121] 本發(fā)明實施例中,平臺A服務(wù)器和平臺B服務(wù)器通過中樞服務(wù)器進行數(shù)據(jù)中轉(zhuǎn),因 此,當(dāng)其中一個平臺對另一個平臺的數(shù)據(jù)進行修改之后,可以通過中樞服務(wù)器實時將修改 后的數(shù)據(jù)轉(zhuǎn)發(fā)至所述另一個平臺的服務(wù)器,從而可以確保平臺A和平臺B數(shù)據(jù)的同步性。其 次,本發(fā)明實施例中對于中樞服務(wù)器上的公用數(shù)據(jù),當(dāng)其中一個平臺對公用數(shù)據(jù)進行修改 時,可以禁止另一個平臺對公用數(shù)據(jù)進行修改,從而可以避免兩個平臺同時對公用數(shù)據(jù)進 行修改而造成數(shù)據(jù)混亂的問題。
[0122] 實施例三:
[0123] 在本發(fā)明實施例三中,主要以游戲為例,介紹游戲運行時的跨平臺數(shù)據(jù)管理方法。
[0124] 首先介紹一下應(yīng)用本發(fā)明實施例所述的跨平臺數(shù)據(jù)管理方法進行數(shù)據(jù)管理的整 體結(jié)構(gòu)。
[0125] 客戶端游戲是指官方搭建服務(wù)器,用戶下載安裝文件安裝客戶端后通過互聯(lián)網(wǎng)連 接到服務(wù)器后進行多人交互的網(wǎng)絡(luò)游戲。網(wǎng)頁游戲(WEB游戲)是指通過瀏覽器打開網(wǎng)頁就 可以進行,只需要少量點擊即可以完成的游戲。
[0126] 持續(xù)時間化網(wǎng)絡(luò)游戲(簡稱"持續(xù)時間游戲")是指玩家需要花費較長時間持續(xù)體 驗的網(wǎng)絡(luò)游戲,例如大部分的客戶端游戲。碎片時間化網(wǎng)絡(luò)游戲(簡稱"碎片時間游戲")是 指玩家可以利用少量時間即可以得到豐富體驗的網(wǎng)絡(luò)游戲,例如社區(qū)類網(wǎng)頁游戲。
[0127] 本發(fā)明實施例中,可以將客戶端游戲的時間持續(xù)化和網(wǎng)頁游戲的時間碎片化結(jié)合 起來,讓玩家可以充分利用這些碎片時間,在持續(xù)時間化網(wǎng)絡(luò)游戲的碎片時間中得到碎片 時間化網(wǎng)絡(luò)游戲的游戲體驗。
[0128] 其中,將客戶端游戲稱為持續(xù)時間游戲,對應(yīng)的服務(wù)器稱為持續(xù)時間服務(wù)器,對應(yīng) 的客戶端稱為持續(xù)時間客戶端,游戲中的數(shù)據(jù)稱為持續(xù)時間數(shù)據(jù);將網(wǎng)頁游戲稱為碎片時 間游戲,對應(yīng)的客戶端稱為碎片時間客戶端,游戲中的數(shù)據(jù)稱為碎片時間數(shù)據(jù)。
[0129] 首先可以在持續(xù)時間游戲中開發(fā)一個碎片時間游戲,所述碎片時間游戲可以采用 網(wǎng)頁游戲的開發(fā)方式進行開發(fā)(因此,本發(fā)明實施例可以將所開發(fā)的碎片時間游戲認(rèn)為是 網(wǎng)頁游戲)。這兩類游戲可以使用同一套數(shù)據(jù)進行不同的游戲體驗,碎片時間游戲可以是不 同于持續(xù)時間游戲的一種新的場景。例如,如果玩家在持續(xù)時間游戲中的場景為A,角色為 a,角色數(shù)據(jù)為b,則該玩家在碎片時間游戲中的場景可以為B,角色也為a,角色數(shù)據(jù)同樣為 b,從而可以通過這兩類游戲同步進行角色的養(yǎng)成。
[0130] 具體的,如圖4所示,為本發(fā)明實施例三中客戶端游戲和網(wǎng)頁游戲結(jié)合的整體結(jié) 構(gòu)圖。
[0131] 從圖4中可以看出,持續(xù)時間游戲和碎片時間游戲結(jié)合之后,即可以在持續(xù)時間 游戲的過程中進行碎片時間游戲??梢栽谠械某掷m(xù)時間服務(wù)器和持續(xù)時間客戶端的基礎(chǔ) 上,開發(fā)一個碎片時間客戶端,并且可以在原有的持續(xù)時間服務(wù)器上開發(fā)一個碎片時間數(shù) 據(jù)處理模塊,用于處理碎片時間游戲中的碎片時間數(shù)據(jù)。
[0132] 其中,持續(xù)時間客戶端和碎片時間客戶端可以通過同一個客戶端軟件實現(xiàn),當(dāng)用 戶在下載客戶端軟件之后,可以同時具有持續(xù)時間客戶端和碎片時間客戶端。碎片時間客 戶端可以為一些插件,這些插件可以臨時存放,例如,如果玩家在加載之后可以將其刪除, 當(dāng)然,也可以進行保存,本發(fā)明實施例對此并不加以限制。
[0133] 可以開發(fā)一個用于承載所述碎片時間客戶端的子進程。當(dāng)玩家在進行持續(xù)時間游 戲的過程中,在持續(xù)時間客戶端內(nèi)可以以某種方式觸發(fā)該承載子進程啟動,通過該子進程 可以展現(xiàn)碎片時間客戶端;然后碎片時間客戶端即可以持續(xù)時間客戶端為中介(進程間通 信的方式),與持續(xù)時間服務(wù)器進行數(shù)據(jù)交互,通過持續(xù)時間服務(wù)器中的碎片時間數(shù)據(jù)處理 模塊對碎片時間客戶端的碎片時間數(shù)據(jù)進行處理。
[0134] 本發(fā)明實施例中,主要是針對上述碎片時間游戲和持續(xù)時間游戲之間的跨平臺數(shù) 據(jù)進行管理的過程。
[0135] 在游戲運行過程中,用戶的信息將會以數(shù)據(jù)庫數(shù)據(jù)的形式固定存儲于游戲數(shù)據(jù)庫 中。游戲數(shù)據(jù)庫數(shù)據(jù)為離線數(shù)據(jù),只用于存儲而非游戲運行過程中的實時運算和讀寫。游 戲數(shù)據(jù)庫中的數(shù)據(jù)會在游戲服務(wù)器啟動后,在用戶的游戲角色上線時由游戲服務(wù)器從游戲 數(shù)據(jù)庫中進行加載并暫存在服務(wù)器數(shù)據(jù)庫中。服務(wù)器數(shù)據(jù)庫中的數(shù)據(jù)為在線數(shù)據(jù),用戶的 游戲過程運算、數(shù)據(jù)讀寫、數(shù)據(jù)調(diào)用等均在該數(shù)據(jù)庫中進行。服務(wù)器數(shù)據(jù)庫會定期將數(shù)據(jù)寫 入到游戲數(shù)據(jù)庫中進行存盤保存,以保證用戶在游戲過程中所產(chǎn)生的數(shù)據(jù)信息能夠有效保 存。
[0136] 用戶的游戲角色在線進行游戲時,角色的數(shù)據(jù)均會在服務(wù)器數(shù)據(jù)庫中進行存儲, 并利用該數(shù)據(jù)進行游戲過程的運算。角色在游戲過程中所產(chǎn)生的數(shù)據(jù)也會在運行過程中暫 存在服務(wù)器數(shù)據(jù)庫中。角色在線時的數(shù)據(jù)修改并不會影響游戲數(shù)據(jù)庫中的數(shù)據(jù),只有在服 務(wù)器數(shù)據(jù)庫中的數(shù)據(jù)存盤時才會存儲在游戲數(shù)據(jù)庫中。
[0137] 游戲中的所有物品均通過一個統(tǒng)一的物品管理系統(tǒng)進行維護。該系統(tǒng)主要負(fù)責(zé)的 事情包括:標(biāo)記并管理每一個物品與角色的關(guān)系、記錄物品的流通記錄、記錄物品的修改記 錄等。此外,由于所管理的內(nèi)容是游戲中所有的物品,因此大部分的游戲中均會使用單一的 物品管理系統(tǒng)進行物品管理與維護。
[0138] 但是,針對上述圖4所述的系統(tǒng)結(jié)構(gòu),玩家可在一個平臺上使用客戶端游戲(持續(xù) 時間游戲)的過程中,同時進行另一個平臺上客戶端內(nèi)嵌的網(wǎng)頁游戲(碎片時間游戲)內(nèi)容。 因此,此部分新的設(shè)計所帶來的問題包括以下幾個方面:
[0139] (1)、新增的內(nèi)嵌網(wǎng)頁游戲內(nèi)容需求一套全新的物品系統(tǒng)。該物品系統(tǒng)仍然歸屬于 使用客戶端游戲的用戶角色,且該物品系統(tǒng)只有在內(nèi)嵌網(wǎng)頁游戲中可以使用,在原有的客 戶端游戲過程中不可使用。
[0140] (2)、當(dāng)用戶在一個平臺進行物品操作時,不能夠影響另一個平臺的用戶物品系 統(tǒng),且其中一個游戲的物品系統(tǒng)與另一個游戲的物品系統(tǒng)需要有數(shù)據(jù)交互能力。即:當(dāng)用 戶在客戶端游戲平臺上進行游戲的同時,可在網(wǎng)頁游戲平臺同步進行物品操作,而兩個平 臺上進行物品操作時不會對另一個平臺的物品產(chǎn)生影響,且用戶可通過固定的物品交流渠 道,將其中一個平臺上的物品導(dǎo)入到另一個平臺中進行使用。
[0141] (3)、對于跨平臺時所使用的角色數(shù)據(jù),由于需要同時通過兩個平臺讀取同一個角 色的數(shù)據(jù),因此涉及到數(shù)據(jù)的讀取安全性問題。假設(shè)對數(shù)據(jù)處理不好,則會出現(xiàn)數(shù)據(jù)被兩個 平臺同時修改,造成讀取或?qū)懭霑r數(shù)據(jù)不一致,造成數(shù)據(jù)混亂等情況。
[0142] (4)、對于跨平臺使用的相同數(shù)據(jù)區(qū)域,由于用戶在使用時可以同時在兩個平臺進 行游戲過程。因此對于同一個數(shù)據(jù)參數(shù),如果其影響的游戲過程分別需要在兩個平臺中進 行展現(xiàn),則會出現(xiàn)由于一個平臺使用而改變參數(shù)時,另一個平臺的數(shù)據(jù)顯示異常的問題。
[0143] 因此,針對上述問題,本發(fā)明實施例主要可以從以下兩個方面進行處理:
[0144] (i)在服務(wù)器端建立兩套物品管理系統(tǒng),同一套框架下處理兩類不同的數(shù)據(jù)。
[0145] 在同一個持續(xù)時間服務(wù)器框架下,運行兩套各自獨立的物品管理系統(tǒng),即持續(xù)時 間物品管理系統(tǒng)和碎片時間物品管理系統(tǒng)。兩套物品系統(tǒng)之間具有固定的互通接口,只有 在系統(tǒng)規(guī)定的情況下方可進行物品數(shù)據(jù)流通,非系統(tǒng)規(guī)定情況下兩個物品系統(tǒng)可以在用戶 游戲過程中同時讀取且互相不受影響。
[0146] (ii)同一個角色數(shù)據(jù),在跨平臺使用時的邏輯關(guān)系。
[0147] 同一個角色數(shù)據(jù)在兩個平臺上同時調(diào)用時,保證數(shù)據(jù)的實時性以及數(shù)據(jù)在兩個平 臺中使用的準(zhǔn)確性,確保數(shù)據(jù)讀寫的邏輯順序以及處理規(guī)則不會導(dǎo)致雙平臺同時修改時的 數(shù)據(jù)混亂。
[0148] 本發(fā)明實施例中,上述圖4中的持續(xù)時間服務(wù)器中可以包括持續(xù)時間數(shù)據(jù)處理模 塊和碎片時間數(shù)據(jù)處理模塊。下面的描述中所提到的平臺A客戶端可以為上述的持續(xù)時間 客戶端,平臺B客戶端可以為上述的碎片時間客戶端;平臺A服務(wù)器可以為上述的持續(xù)時間 數(shù)據(jù)處理模塊,平臺B服務(wù)器可以為上述的碎片時間數(shù)據(jù)處理模塊,中樞服務(wù)器為上述的 持續(xù)時間服務(wù)器;平臺A數(shù)據(jù)可以為持續(xù)時間游戲物品管理系統(tǒng)中的數(shù)據(jù),平臺B數(shù)據(jù)可 以為碎片時間游戲物品管理系統(tǒng)中的數(shù)據(jù),公用數(shù)據(jù)可以為運行游戲的角色數(shù)據(jù)(賬戶數(shù) 據(jù))?;蛘呱鲜銎脚_A可以對應(yīng)碎片時間游戲,平臺B可以對應(yīng)持續(xù)時間游戲,本發(fā)明實施 例對此并不加以限制。
[0149] 具體的,本發(fā)明實施例所述的跨平臺數(shù)據(jù)管理方法主要可以包括以下三個過程:
[0150] 1、數(shù)據(jù)拆分
[0151] 將游戲中的數(shù)據(jù)進行邏輯拆分,將其中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)、公 用數(shù)據(jù)三個部分。拆分的方法可以依據(jù)兩個平臺對于數(shù)據(jù)的需求,按照哪個平臺修改,數(shù)據(jù) 隸屬于哪個平臺的方式進行拆分,而對于兩個平臺均會進行讀取或使用的數(shù)據(jù),設(shè)定為公 用數(shù)據(jù)。隸屬于平臺A的數(shù)據(jù)由平臺A負(fù)責(zé)處理;隸屬于平臺B的數(shù)據(jù)由平臺B負(fù)責(zé)處理; 公用數(shù)據(jù)則為兩個平臺均可進行修改和讀取的數(shù)據(jù)。
[0152] 在服務(wù)器調(diào)用時根據(jù)當(dāng)前發(fā)起請求的平臺,由該平臺對應(yīng)的服務(wù)器自動獲取到對 應(yīng)的數(shù)據(jù)進行操作。
[0153] 2、服務(wù)器架構(gòu)設(shè)計
[0154] 調(diào)整原有的服務(wù)器--客戶端的簡單CS結(jié)構(gòu),設(shè)定為平臺A客戶端--平臺A服 務(wù)器--中樞服務(wù)器--平臺B服務(wù)器--平臺B客戶端的方式,數(shù)據(jù)在兩個平臺的服務(wù) 器之間通過中樞服務(wù)器進行中轉(zhuǎn)并進行協(xié)調(diào)。
[0155] 3、數(shù)據(jù)處理流程設(shè)計
[0156] 在原有的持續(xù)時間物品管理系統(tǒng)(客戶端游戲物品管理系統(tǒng))之上,制作了新的碎 片時間物品管理系統(tǒng)(網(wǎng)頁游戲物品管理系統(tǒng))。兩個物品管理系統(tǒng)均受到同一個持續(xù)時間 服務(wù)器進行管理。當(dāng)用戶在兩個平臺上同時進行游戲時,將兩個物品管理系統(tǒng)分別設(shè)定于 持續(xù)時間服務(wù)器的不同邏輯模塊(持續(xù)時間數(shù)據(jù)處理模塊和碎片時間數(shù)據(jù)處理模塊)中進 行管理。通過持續(xù)時間服務(wù)器的中樞管理方式對兩個邏輯模塊進行分別處理調(diào)用,并通過 中樞管理方式對兩個模塊中涉及到的數(shù)據(jù)交互進行處理。
[0157] 對于拆分的數(shù)據(jù),分別由各自的對應(yīng)的平臺服務(wù)器以及中樞服務(wù)器進行維護,作 為服務(wù)器數(shù)據(jù)而存在,而中樞服務(wù)器作為兩個平臺服務(wù)器之間的中樞來協(xié)調(diào)各自數(shù)據(jù)的中 轉(zhuǎn)。
[0158] 當(dāng)用戶在平臺A客戶端上進行游戲時,由平臺A服務(wù)器給予用戶數(shù)據(jù)支持,同時由 中樞服務(wù)器對平臺A服務(wù)器進行支持。因此如果用戶在平臺A上進行游戲而造成平臺A服 務(wù)器的數(shù)據(jù)修改時,則修改平臺A服務(wù)器上的數(shù)據(jù)內(nèi)容,而平臺B服務(wù)器上的數(shù)據(jù)內(nèi)容不受 影響。當(dāng)玩家的游戲內(nèi)容修改了中樞服務(wù)器上的數(shù)據(jù)時,由中樞服務(wù)器強制平臺B服務(wù)器 進行數(shù)據(jù)更新,并將消息推送給平臺B客戶端上,此時用戶在平臺B客戶端上可直接收到更 新后的數(shù)據(jù)。
[0159] 對于公用數(shù)據(jù),如果兩個平臺同時使用公用數(shù)據(jù)時,將公用數(shù)據(jù)的修改權(quán)限固定 為其中一個平臺,另一個平臺只能進行讀取,以此將兩個平臺之間的數(shù)據(jù)讀取權(quán)限進行合 理的分配,避免同時修改引起的數(shù)據(jù)混亂。
[0160] 下面,以碎片時間平臺向持續(xù)時間平臺請求數(shù)據(jù)為例,說明本發(fā)明實施例的跨平 臺數(shù)據(jù)管理方法的流程,該流程可以包括以下步驟:
[0161] a,將游戲中的數(shù)據(jù)拆分為持續(xù)時間物品管理系統(tǒng)數(shù)據(jù)、碎片時間物品管理系統(tǒng)數(shù) 據(jù)和公用數(shù)據(jù);其中,持續(xù)時間物品管理系統(tǒng)數(shù)據(jù)存儲至持續(xù)時間數(shù)據(jù)處理模塊,碎片時間 物品管理系統(tǒng)數(shù)據(jù)存儲至碎片時間數(shù)據(jù)處理模塊,公用數(shù)據(jù)存儲至持續(xù)時間服務(wù)器。
[0162] b,碎片時間客戶端從碎片時間服務(wù)器讀取碎片時間物品管理系統(tǒng)數(shù)據(jù)。
[0163] c,當(dāng)碎片時間客戶端對所述碎片時間物品管理系統(tǒng)數(shù)據(jù)進行修改之后,碎片時間 客戶端將將修改后的碎片時間物品管理系統(tǒng)數(shù)據(jù)寫入碎片時間數(shù)據(jù)處理模塊。
[0164] d,碎片時間客戶端依次通過碎片時間數(shù)據(jù)處理模塊和持續(xù)時間服務(wù)器,從持續(xù)時 間服務(wù)器讀取公用數(shù)據(jù)。
[0165] e,當(dāng)碎片時間客戶端對所述公用數(shù)據(jù)進行修改時,禁止持續(xù)時間客戶端對所述公 用數(shù)據(jù)進行修改。
[0166] f,當(dāng)碎片時間客戶端對所述公用數(shù)據(jù)進行修改之后,碎片時間客戶端依次通過碎 片時間數(shù)據(jù)處理模塊和持續(xù)時間服務(wù)器,將修改后的公用數(shù)據(jù)寫入持續(xù)時間服務(wù)器,并且 允許持續(xù)時間客戶端對所述公用數(shù)據(jù)進行修改。
[0167] g,碎片時間客戶端依次通過碎片時間數(shù)據(jù)處理模塊、持續(xù)時間服務(wù)器和持續(xù)時間 數(shù)據(jù)處理模塊,從持續(xù)時間數(shù)據(jù)處理模塊讀取持續(xù)時間數(shù)據(jù)。
[0168] h,當(dāng)碎片時間客戶端對所述持續(xù)時間數(shù)據(jù)進行修改之后,碎片時間客戶端依次通 過碎片時間數(shù)據(jù)處理模塊、持續(xù)時間服務(wù)器和持續(xù)時間數(shù)據(jù)處理模塊,將修改后的持續(xù)時 間數(shù)據(jù)寫入持續(xù)時間數(shù)據(jù)處理模塊。
[0169] 對于上述a_h各個步驟的具體過程,參照上述實施例一的相關(guān)描述即可。對于持 續(xù)時間平臺向碎片時間平臺請求數(shù)據(jù)的過程,與上述步驟a-h基本相似,本發(fā)明實施例在 此不再詳細(xì)論述。
[0170] 本發(fā)明實施例服務(wù)器運行過程中,所有的數(shù)據(jù)流通均為實時的過程。用戶在使用 過程中,兩個服務(wù)器中的數(shù)據(jù)均為實時統(tǒng)一的,用戶可以通過任何一個平臺進行跨平臺操 作來獲取另一個平臺的數(shù)據(jù),同時通過在某一個平臺進行數(shù)據(jù)變更而使得另一個平臺的數(shù) 據(jù)產(chǎn)生對應(yīng)影響,且影響是實時的。
[0171] 此外,對于各自運行的程序邏輯,能夠保證各自的邏輯具有獨立性。確保既不會影 響另一個平臺的規(guī)則也不會受到另一個平臺的處理邏輯規(guī)則的限制。兩個平臺對于同一個 用戶數(shù)據(jù)的讀取能夠利用該方法有效的進行實時操作,確保用戶數(shù)據(jù)在兩個平臺上可以快 速的互通和互動,且用戶可同時在兩個平臺上進行數(shù)據(jù)操作而不會產(chǎn)生錯誤。
[0172] 以上是以游戲為例,當(dāng)然本發(fā)明的保護范圍不限定于游戲這種應(yīng)用,也可以是其 他應(yīng)用領(lǐng)域的數(shù)據(jù)管理,如聊天工具等等。
[0173] 對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但 是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某 些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描 述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
[0174] 實施例四:
[0175] 參照圖5,示出了本發(fā)明實施例四所述的一種跨平臺數(shù)據(jù)管理系統(tǒng)的結(jié)構(gòu)框圖,該 系統(tǒng)可以包括:拆分模塊501、平臺內(nèi)讀取模塊502、平臺內(nèi)寫入模塊503、跨平臺讀取模塊 504、跨平臺寫入模塊505、公用讀取模塊506、禁止模塊507和公用寫入模塊508。
[0176] 拆分模塊501,用于將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù); 其中,平臺A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至 中樞服務(wù)器;
[0177] 平臺內(nèi)讀取模塊502,用于平臺A客戶端從平臺A服務(wù)器讀取平臺A數(shù)據(jù);
[0178] 平臺內(nèi)寫入模塊503,用于當(dāng)平臺A客戶端對所述平臺A數(shù)據(jù)進行修改之后,平臺 A客戶端將將修改后的平臺A數(shù)據(jù)寫入平臺A服務(wù)器;
[0179] 跨平臺讀取模塊504,用于平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平 臺B服務(wù)器,從平臺B服務(wù)器讀取平臺B數(shù)據(jù);
[0180] 所述跨平臺讀取模塊504可以包括:
[0181] 跨平臺轉(zhuǎn)發(fā)子模塊,用于平臺A客戶端向平臺A服務(wù)器發(fā)送獲取平臺B數(shù)據(jù)的請 求,平臺A服務(wù)器將所述獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器,通過中樞服務(wù)器將所述 獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至平臺B服務(wù)器;
[0182] 第一跨平臺反饋子模塊,用于平臺B服務(wù)器將所述平臺B數(shù)據(jù)反饋至中樞服務(wù)器, 通過中樞服務(wù)器將所述平臺B數(shù)據(jù)反饋至平臺A服務(wù)器,平臺A服務(wù)器將所述平臺B數(shù)據(jù) 反饋至平臺A客戶端。
[0183] 跨平臺寫入模塊505,用于當(dāng)平臺A客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺 A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入 平臺B服務(wù)器;
[0184] 所述跨平臺寫入模塊505可以包括:
[0185] 平臺內(nèi)寫入子模塊,用于平臺A客戶端將修改后的平臺B數(shù)據(jù)寫入平臺A服務(wù)器;
[0186] 第二跨平臺反饋子模塊,用于平臺A服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至中 樞服務(wù)器,通過中樞服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至平臺B服務(wù)器。
[0187] 公用讀取模塊506,用于平臺A客戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,從中 樞服務(wù)器讀取公用數(shù)據(jù);
[0188] 所述公用讀取模塊506可以包括:
[0189] 公用轉(zhuǎn)發(fā)子模塊,用于平臺A客戶端向平臺A服務(wù)器發(fā)送獲取公用數(shù)據(jù)的請求,平 臺A服務(wù)器將所述獲取公用數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器;
[0190] 公用讀取反饋子模塊,用于中樞服務(wù)器將所述公用數(shù)據(jù)反饋至平臺A服務(wù)器,平 臺A服務(wù)器將所述平臺B數(shù)據(jù)反饋至平臺A客戶端。
[0191] 禁止模塊507,用于當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺B客戶 端對所述公用數(shù)據(jù)進行修改;
[0192] 公用寫入模塊508,用于當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改之后,平臺A客 戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,并且允 許平臺B客戶端對所述公用數(shù)據(jù)進行修改。
[0193] 所述公用寫入模塊508可以包括:
[0194] 公用寫入子模塊,用于平臺A客戶端將修改后的公用數(shù)據(jù)寫入平臺A服務(wù)器;
[0195] 公用反饋子模塊,用于平臺A服務(wù)器將所述修改后的公用數(shù)據(jù)反饋至中樞服務(wù) 器。
[0196] 本發(fā)明實施例通過對應(yīng)用中的數(shù)據(jù)進行拆分,并且對服務(wù)器架構(gòu)進行修改,將數(shù) 據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù),平臺A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù) 據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器。其中,平臺A服務(wù)器和平臺B服務(wù)器 通過中樞服務(wù)器進行數(shù)據(jù)中轉(zhuǎn),因此,當(dāng)其中一個平臺對另一個平臺的數(shù)據(jù)進行修改之后, 可以通過中樞服務(wù)器實時將修改后的數(shù)據(jù)轉(zhuǎn)發(fā)至所述另一個平臺的服務(wù)器,從而可以確保 平臺A和平臺B數(shù)據(jù)的同步性。
[0197] 其次,本發(fā)明實施例中對于中樞服務(wù)器上的公用數(shù)據(jù),當(dāng)其中一個平臺對公用數(shù) 據(jù)進行修改時,可以禁止另一個平臺對公用數(shù)據(jù)進行修改,從而可以避免兩個平臺同時對 公用數(shù)據(jù)進行修改而造成數(shù)據(jù)混亂的問題。
[0198] 對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān) 之處參見方法實施例的部分說明即可。
[0199] 需要說明的是,上述各個實施例中數(shù)據(jù)的讀取和寫入均是針對與服務(wù)器對應(yīng)的服 務(wù)器數(shù)據(jù)庫而言的,即從服務(wù)器數(shù)據(jù)庫讀取數(shù)據(jù),并將數(shù)據(jù)寫入服務(wù)器數(shù)據(jù)庫,本發(fā)明實施 例在此不再詳細(xì)論述。
[0200] 本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與 其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
[0201] 本發(fā)明實施例可以在由計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中描述,例 如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、 對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計算環(huán)境中實踐本發(fā)明,在這些分布式計算環(huán) 境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模 塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計算機存儲介質(zhì)中。
[0202] 最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將 一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作 之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語"包括"、"包含"或者其任何其他變體 意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括 那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或 者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句"包括一個……"限定的要素,并 不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
[0203] 以上對本發(fā)明所提供的一種跨平臺數(shù)據(jù)管理方法和系統(tǒng),進行了詳細(xì)介紹,本文 中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫 助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思 想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對 本發(fā)明的限制。
【權(quán)利要求】
1. 一種跨平臺數(shù)據(jù)管理方法,其特征在于,包括: 將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);其中,平臺A數(shù)據(jù)存儲至 平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù)器; 平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,從平臺B服務(wù)器讀 取平臺B數(shù)據(jù); 當(dāng)平臺A客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺A客戶端依次通過平臺A服務(wù) 器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺B服務(wù)器。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括: 平臺A客戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,從中樞服務(wù)器讀取公用數(shù)據(jù); 當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺B客戶端對所述公用數(shù)據(jù)進行 修改; 當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改之后,平臺A客戶端依次通過平臺A服務(wù)器 和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,并且允許平臺B客戶端對所述公用 數(shù)據(jù)進行修改。
3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述平臺A客戶端依次通過平臺A服務(wù)器 和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,包括: 平臺A客戶端將修改后的公用數(shù)據(jù)寫入平臺A服務(wù)器,平臺A服務(wù)器將所述修改后的 公用數(shù)據(jù)反饋至中樞服務(wù)器。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述平臺A客戶端依次通過平臺A服務(wù) 器、中樞服務(wù)器和平臺B服務(wù)器,從平臺B服務(wù)器讀取平臺B數(shù)據(jù),包括 : 平臺A客戶端向平臺A服務(wù)器發(fā)送獲取平臺B數(shù)據(jù)的請求,平臺A服務(wù)器將所述獲取 平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器,通過中樞服務(wù)器將所述獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā) 至平臺B服務(wù)器; 平臺B服務(wù)器將所述平臺B數(shù)據(jù)反饋至中樞服務(wù)器,通過中樞服務(wù)器將所述平臺B數(shù) 據(jù)反饋至平臺A服務(wù)器,平臺A服務(wù)器將所述平臺B數(shù)據(jù)反饋至平臺A客戶端。
5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述平臺A客戶端依次通過平臺A服務(wù) 器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺B服務(wù)器,包括 : 平臺A客戶端將修改后的平臺B數(shù)據(jù)寫入平臺A服務(wù)器,平臺A服務(wù)器將所述修改后 的平臺B數(shù)據(jù)反饋至中樞服務(wù)器,通過中樞服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至平臺 B服務(wù)器。
6. -種跨平臺數(shù)據(jù)管理系統(tǒng),其特征在于,包括: 拆分模塊,用于將應(yīng)用中的數(shù)據(jù)拆分為平臺A數(shù)據(jù)、平臺B數(shù)據(jù)和公用數(shù)據(jù);其中,平 臺A數(shù)據(jù)存儲至平臺A服務(wù)器,平臺B數(shù)據(jù)存儲至平臺B服務(wù)器,公用數(shù)據(jù)存儲至中樞服務(wù) 器; 跨平臺讀取模塊,用于平臺A客戶端依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù) 器,從平臺B服務(wù)器讀取平臺B數(shù)據(jù); 跨平臺寫入模塊,用于當(dāng)平臺A客戶端對所述平臺B數(shù)據(jù)進行修改之后,平臺A客戶端 依次通過平臺A服務(wù)器、中樞服務(wù)器和平臺B服務(wù)器,將修改后的平臺B數(shù)據(jù)寫入平臺B服 務(wù)器。
7. 根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,還包括: 公用讀取模塊,用于平臺A客戶端依次通過平臺A服務(wù)器和中樞服務(wù)器,從中樞服務(wù)器 讀取公用數(shù)據(jù); 禁止模塊,用于當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改時,禁止平臺B客戶端對所述 公用數(shù)據(jù)進行修改; 公用寫入模塊,用于當(dāng)平臺A客戶端對所述公用數(shù)據(jù)進行修改之后,平臺A客戶端依次 通過平臺A服務(wù)器和中樞服務(wù)器,將修改后的公用數(shù)據(jù)寫入中樞服務(wù)器,并且允許平臺B客 戶端對所述公用數(shù)據(jù)進行修改。
8. 根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述公用寫入模塊包括: 公用寫入子模塊,用于平臺A客戶端將修改后的公用數(shù)據(jù)寫入平臺A服務(wù)器; 公用反饋子模塊,用于平臺A服務(wù)器將所述修改后的公用數(shù)據(jù)反饋至中樞服務(wù)器。
9. 根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述跨平臺讀取模塊包括: 跨平臺轉(zhuǎn)發(fā)子模塊,用于平臺A客戶端向平臺A服務(wù)器發(fā)送獲取平臺B數(shù)據(jù)的請求,平 臺A服務(wù)器將所述獲取平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至中樞服務(wù)器,通過中樞服務(wù)器將所述獲取 平臺B數(shù)據(jù)的請求轉(zhuǎn)發(fā)至平臺B服務(wù)器; 第一跨平臺反饋子模塊,用于平臺B服務(wù)器將所述平臺B數(shù)據(jù)反饋至中樞服務(wù)器,通過 中樞服務(wù)器將所述平臺B數(shù)據(jù)反饋至平臺A服務(wù)器,平臺A服務(wù)器將所述平臺B數(shù)據(jù)反饋 至平臺A客戶端。
10. 根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述跨平臺寫入模塊包括: 平臺內(nèi)寫入子模塊,用于平臺A客戶端將修改后的平臺B數(shù)據(jù)寫入平臺A服務(wù)器; 第二跨平臺反饋子模塊,用于平臺A服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至中樞服 務(wù)器,通過中樞服務(wù)器將所述修改后的平臺B數(shù)據(jù)反饋至平臺B服務(wù)器。
【文檔編號】H04L29/08GK104090874SQ201310110540
【公開日】2014年10月8日 申請日期:2013年4月1日 優(yōu)先權(quán)日:2013年4月1日
【發(fā)明者】洪曉健 申請人:北京暢游天下網(wǎng)絡(luò)技術(shù)有限公司