手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒ā⑾到y(tǒng)和手機(jī)用戶端的制作方法
【專利摘要】本發(fā)明公開了一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?、系統(tǒng)和手機(jī)用戶端,涉及手機(jī)網(wǎng)絡(luò)游戲的【技術(shù)領(lǐng)域】。本發(fā)明提供的技術(shù)方案,通過將網(wǎng)絡(luò)消息數(shù)據(jù)放入消息發(fā)送隊(duì)列中,并按照設(shè)定的時(shí)間間隔,發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),而不是每次都發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),從而減小了發(fā)送次數(shù);同時(shí),通過先合并消息發(fā)送隊(duì)列中相同類型的網(wǎng)絡(luò)消息數(shù)據(jù),再發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),極大的減小了網(wǎng)絡(luò)消息數(shù)據(jù)的大小。因此,在手機(jī)網(wǎng)絡(luò)游戲中,數(shù)據(jù)傳輸占用的網(wǎng)絡(luò)資源小,數(shù)據(jù)傳輸速率快,手機(jī)用戶響應(yīng)延時(shí)短,可以使不同類型的手機(jī)網(wǎng)絡(luò)用戶都可以順利的進(jìn)行手機(jī)網(wǎng)絡(luò)游戲,進(jìn)而使不同網(wǎng)絡(luò)的手機(jī)用戶進(jìn)行網(wǎng)絡(luò)游戲交互具有良好的體驗(yàn)。
【專利說明】手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?、系統(tǒng)和手機(jī)用戶端
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及手機(jī)網(wǎng)絡(luò)游戲的【技術(shù)領(lǐng)域】,尤其是涉及一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?、系統(tǒng)和手機(jī)用戶端。
【背景技術(shù)】
[0002]現(xiàn)在用戶不但可以在電腦上玩網(wǎng)絡(luò)游戲,隨著移動(dòng)通信技術(shù)的不斷發(fā)展,用戶也可以在手機(jī)上玩網(wǎng)絡(luò)游戲了,通過手機(jī)上網(wǎng)玩的網(wǎng)絡(luò)游戲稱為手機(jī)網(wǎng)絡(luò)游戲。由于手機(jī)攜帶的便利性和使用的廣泛性,手機(jī)網(wǎng)絡(luò)游戲越來越受到歡迎和廣泛使用。手機(jī)網(wǎng)絡(luò)游戲一般是不同用戶在各自的手機(jī)上運(yùn)行同一個(gè)網(wǎng)絡(luò)游戲,從而實(shí)現(xiàn)不同用戶之間的交互對(duì)戰(zhàn),以及服務(wù)器數(shù)據(jù)的保存,獲取。
[0003]在電腦上玩網(wǎng)絡(luò)游戲時(shí),由于各個(gè)玩家使用的帶寬大致相同,因此游戲過程中各個(gè)玩家對(duì)于網(wǎng)絡(luò)的延時(shí)響應(yīng)也大致相同。但是在手機(jī)上玩網(wǎng)絡(luò)游戲時(shí),各個(gè)玩家使用的手機(jī)網(wǎng)絡(luò)類型可能不同,比如有些玩家可能使用的是2G網(wǎng)絡(luò),有些玩家可能使用的是2.5G網(wǎng)絡(luò),有些玩家可能使用3G或者4G網(wǎng)絡(luò)。而不同的手機(jī)網(wǎng)絡(luò)類型,會(huì)導(dǎo)致網(wǎng)絡(luò)速度的差別,從而在手機(jī)網(wǎng)絡(luò)游戲中,使用不同網(wǎng)絡(luò)類型的各個(gè)玩家對(duì)于網(wǎng)絡(luò)的延時(shí)響應(yīng)也會(huì)存在較大的差別,而在手機(jī)網(wǎng)絡(luò)游戲中,傳輸?shù)臄?shù)據(jù)越多,占用的網(wǎng)絡(luò)資源越多,高速手機(jī)網(wǎng)絡(luò)用戶與低速手機(jī)網(wǎng)絡(luò)用戶的延時(shí)響應(yīng)差別就會(huì)越大。而進(jìn)行同一個(gè)手機(jī)網(wǎng)絡(luò)游戲的手機(jī)用戶,如果其延時(shí)響應(yīng)時(shí)間存在較大差異,則會(huì)出現(xiàn)手機(jī)用戶游戲界面因?yàn)榈却W(wǎng)絡(luò)消息而不能及時(shí)與其他手機(jī)用戶交互,從而無法順利進(jìn)行手機(jī)網(wǎng)絡(luò)游戲的現(xiàn)象。
[0004]目前,在手機(jī)網(wǎng)絡(luò)游戲中,一般使用TCP協(xié)議完成數(shù)據(jù)傳輸,將手機(jī)用戶進(jìn)行游戲操作產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù),發(fā)送到游戲服務(wù)器。TCP協(xié)議方式具體為,每個(gè)網(wǎng)絡(luò)消息數(shù)據(jù)按照時(shí)間順序依次進(jìn)行傳輸,第一個(gè)消息發(fā)送出去后,等待消息接收方發(fā)送的確認(rèn)消息,接收到確認(rèn)消息后,再發(fā)送第二個(gè)消息,這樣,順次將所有的消息一個(gè)一個(gè)的單獨(dú)發(fā)送出去。
[0005]采用上述手機(jī)網(wǎng)絡(luò)游戲的數(shù)據(jù)傳輸方式,由于每次產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)都需要進(jìn)行傳輸,所以,需要傳輸?shù)臄?shù)據(jù)大、次數(shù)多,進(jìn)而占用的網(wǎng)絡(luò)資源多,導(dǎo)致數(shù)據(jù)傳輸速率慢,手機(jī)用戶響應(yīng)延時(shí)長(zhǎng),而低速網(wǎng)絡(luò)手機(jī)用戶響應(yīng)延時(shí)更長(zhǎng),從而導(dǎo)致不同網(wǎng)絡(luò)的手機(jī)用戶進(jìn)行網(wǎng)絡(luò)游戲交互的體驗(yàn)差。
[0006]另外,由于TCP協(xié)議通過超時(shí)重傳的機(jī)制保證數(shù)據(jù)傳輸?shù)目煽啃?,所謂超時(shí)重傳是指TCP協(xié)議在發(fā)送某一個(gè)數(shù)據(jù)以后就開啟一個(gè)計(jì)時(shí)器,在一定時(shí)間內(nèi)如果沒有得到發(fā)送的數(shù)據(jù)報(bào)的ACK報(bào)文,那么就重新發(fā)送數(shù)據(jù),直到發(fā)送成功為止。因此,采用現(xiàn)有技術(shù)的手機(jī)網(wǎng)絡(luò)游戲的數(shù)據(jù)傳輸方式,需要重新傳輸?shù)臄?shù)據(jù)數(shù)量多、數(shù)據(jù)大、次數(shù)多,占用的網(wǎng)絡(luò)資源多,手機(jī)用戶響應(yīng)延時(shí)長(zhǎng),而低速網(wǎng)絡(luò)手機(jī)用戶響應(yīng)延時(shí)更長(zhǎng),從而導(dǎo)致不同網(wǎng)絡(luò)的手機(jī)用戶進(jìn)行網(wǎng)絡(luò)游戲交互的體驗(yàn)差。
[0007]當(dāng)手機(jī)用戶游戲操作連續(xù)產(chǎn)生大量網(wǎng)絡(luò)消息數(shù)據(jù)時(shí),在手機(jī)網(wǎng)絡(luò)速度低的情況下,會(huì)因?yàn)橥话l(fā)大量消息而導(dǎo)致網(wǎng)絡(luò)響應(yīng)變得更慢,手機(jī)用戶響應(yīng)延時(shí)更長(zhǎng),從而導(dǎo)致不同網(wǎng)絡(luò)的手機(jī)用戶進(jìn)行網(wǎng)絡(luò)游戲交互的體驗(yàn)差。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的在于提供一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒ā⑾到y(tǒng)和手機(jī)用戶端,充分考慮手機(jī)網(wǎng)絡(luò)游戲中,高速手機(jī)網(wǎng)絡(luò)用戶和低速手機(jī)網(wǎng)絡(luò)用戶的區(qū)別,使數(shù)據(jù)傳輸不受到手機(jī)網(wǎng)絡(luò)速度的影響,從而使不同類型的手機(jī)網(wǎng)絡(luò)用戶都可以順利的進(jìn)行手機(jī)網(wǎng)絡(luò)游戲,進(jìn)而使不同網(wǎng)絡(luò)的手機(jī)用戶進(jìn)行網(wǎng)絡(luò)游戲交互具有良好的體驗(yàn)。
[0009]為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:
[0010]一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?,包括如下步驟:
[0011]步驟1,將手機(jī)用戶在游戲操作時(shí)產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)放入消息發(fā)送隊(duì)列中;
[0012]步驟2,在設(shè)定的時(shí)間間隔內(nèi),判斷所述消息發(fā)送隊(duì)列中是否存在所述網(wǎng)絡(luò)消息數(shù)據(jù),如果不存在所述網(wǎng)絡(luò)消息數(shù)據(jù),則返回步驟I;如果存在所述網(wǎng)絡(luò)消息數(shù)據(jù),則進(jìn)入步驟3 ;
[0013]步驟3,判斷所述消息發(fā)送隊(duì)列中是否存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),如果不存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器;如果存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)合并,并將合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器;
[0014]步驟4,重復(fù)步驟2-步驟3。
[0015]其中,步驟I具體為,將手機(jī)用戶在游戲操作時(shí)產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)按照時(shí)間順序依次放入消息發(fā)送隊(duì)列中。
[0016]具體地,步驟2中,所述時(shí)間間隔設(shè)定為l_2s。
[0017]具體地,步驟3中,所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),包括內(nèi)容和時(shí)間戳;則步驟4中,所述將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)合并,具體為,將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)的內(nèi)容合并,保留每個(gè)所述網(wǎng)絡(luò)消息數(shù)據(jù)的時(shí)間戳,得到一個(gè)合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
[0018]其中,步驟4中,如果所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)為可覆蓋操作,則所述將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)合并,具體為,將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)的內(nèi)容合并,保留與當(dāng)前時(shí)間接近的時(shí)間戳,得到一個(gè)合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
[0019]其中,步驟3具體包括如下步驟:
[0020]步驟301,從所述消息發(fā)送隊(duì)列中取出第m個(gè)所述網(wǎng)絡(luò)消息數(shù)據(jù),構(gòu)成網(wǎng)絡(luò)數(shù)據(jù)包;
[0021]步驟302,判斷所述消息發(fā)送隊(duì)列中是否存在與所述網(wǎng)絡(luò)消息數(shù)據(jù)包的類型相同的所述網(wǎng)絡(luò)消息數(shù)據(jù);如果不存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送到游戲服務(wù)器;如果存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)與所述網(wǎng)絡(luò)數(shù)據(jù)包合并,并將合并后的所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送到游戲服務(wù)器;
[0022]步驟303,重復(fù)步驟301-步驟302,直到m = n,其中,I <m<n,m、n均為自然數(shù),η為所述消息發(fā)送隊(duì)列中所述網(wǎng)絡(luò)消息數(shù)據(jù)的個(gè)數(shù)。
[0023]一種手機(jī)用戶端,包括:
[0024]操作模塊:用于手機(jī)用戶進(jìn)行游戲操作,并產(chǎn)生網(wǎng)絡(luò)消息數(shù)據(jù);還用于將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送至消息發(fā)送隊(duì)列模塊中;
[0025]消息發(fā)送隊(duì)列模塊:用于接收所述網(wǎng)絡(luò)消息數(shù)據(jù),并將所述網(wǎng)絡(luò)消息數(shù)據(jù)存儲(chǔ)在消息發(fā)送隊(duì)列中;
[0026]判斷控制模塊:用于判斷所述消息發(fā)送隊(duì)列中是否存在所述網(wǎng)絡(luò)消息數(shù)據(jù),還用于判斷所述消息發(fā)送隊(duì)列中是否存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù);
[0027]網(wǎng)絡(luò)消息發(fā)送模塊:用于將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器。
[0028]一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)南到y(tǒng),包括上述手機(jī)用戶端,還包括游戲服務(wù)器;
[0029]所述游戲服務(wù)器用于接收所述手機(jī)用戶端的所述網(wǎng)絡(luò)消息發(fā)送模塊發(fā)送的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
[0030]本發(fā)明的有益效果可以總結(jié)如下:本發(fā)明通過將網(wǎng)絡(luò)消息數(shù)據(jù)放入消息發(fā)送隊(duì)列中,并按照設(shè)定的時(shí)間間隔,發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),而不是每次都發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),從而減小了發(fā)送次數(shù);同時(shí),通過先合并消息發(fā)送隊(duì)列中相同類型的網(wǎng)絡(luò)消息數(shù)據(jù),再發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),極大的減小了網(wǎng)絡(luò)消息數(shù)據(jù)的大??;因此,在手機(jī)網(wǎng)絡(luò)游戲中,數(shù)據(jù)傳輸占用的網(wǎng)絡(luò)資源小,數(shù)據(jù)傳輸速率快,手機(jī)用戶響應(yīng)延時(shí)短,可以使不同類型的手機(jī)網(wǎng)絡(luò)用戶都可以順利的進(jìn)行手機(jī)網(wǎng)絡(luò)游戲,進(jìn)而使不同網(wǎng)絡(luò)的手機(jī)用戶進(jìn)行網(wǎng)絡(luò)游戲交互具有良好的體驗(yàn)。
【專利附圖】
【附圖說明】
[0031]圖1為本發(fā)明實(shí)施例提供的一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒鞒淌疽鈭D;
[0032]圖2為本發(fā)明實(shí)施例提供的一種手機(jī)用戶端的結(jié)構(gòu)示意圖;
[0033]圖3為本發(fā)明實(shí)施例提供的一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)南到y(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0034]為了使本發(fā)明所解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0035]實(shí)施例一
[0036]如圖1所示,本發(fā)明實(shí)施例提供了一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒ǎㄈ缦虏襟E:
[0037]步驟1,將手機(jī)用戶在游戲操作時(shí)產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)放入消息發(fā)送隊(duì)列中;
[0038]步驟2,在設(shè)定的時(shí)間間隔內(nèi),判斷所述消息發(fā)送隊(duì)列中是否存在所述網(wǎng)絡(luò)消息數(shù)據(jù),如果不存在所述網(wǎng)絡(luò)消息數(shù)據(jù),則返回步驟I ;如果存在所述網(wǎng)絡(luò)消息數(shù)據(jù),則進(jìn)入步驟3 ;
[0039]步驟3,判斷所述消息發(fā)送隊(duì)列中是否存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),如果不存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器;如果存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)合并,并將合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器;
[0040]步驟4,重復(fù)步驟2-步驟3。
[0041]本發(fā)明實(shí)施例中,通過設(shè)置數(shù)據(jù)發(fā)送的時(shí)間間隔,來減小數(shù)據(jù)傳輸?shù)拇螖?shù),從而降低對(duì)網(wǎng)絡(luò)資源的占用率,提高網(wǎng)絡(luò)速率,也可以保證手機(jī)用戶在低速手機(jī)網(wǎng)絡(luò)環(huán)境中也能進(jìn)行順暢的游戲體驗(yàn)。
[0042]而減少了數(shù)據(jù)傳輸次數(shù)后,每次傳輸?shù)臄?shù)據(jù)的數(shù)量和大小就會(huì)增大,這樣,可能反而會(huì)導(dǎo)致數(shù)據(jù)傳輸?shù)乃俾式档?,使用戶的游戲體驗(yàn)更差。
[0043]本發(fā)明實(shí)施例中,利用手機(jī)網(wǎng)絡(luò)游戲中,存在很多重復(fù)性操作的特點(diǎn),通過將相同類型的操作進(jìn)行合并,來減少需要進(jìn)行傳輸?shù)臄?shù)據(jù)的數(shù)量和大小,從而使手機(jī)用戶在低速手機(jī)網(wǎng)絡(luò)環(huán)境中也能進(jìn)行順暢的游戲體驗(yàn)。
[0044]本發(fā)明實(shí)施例的具體實(shí)現(xiàn)過程為:
[0045]手機(jī)用戶在游戲操作的過程中,產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù),不是一旦產(chǎn)生就立即向服務(wù)器發(fā)送,而是將產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)存放在手機(jī)用戶本地的消息發(fā)送隊(duì)列中,并發(fā)送網(wǎng)絡(luò)傳輸?shù)耐ㄖ?。然后繼續(xù)響應(yīng)游戲界面上用戶的操作,從而實(shí)現(xiàn)用戶對(duì)游戲的平滑操作。
[0046]同時(shí),程序?qū)οl(fā)送隊(duì)列中存放的網(wǎng)絡(luò)消息數(shù)據(jù),按照設(shè)定的時(shí)間間隔進(jìn)行發(fā)送。在發(fā)送之前,首先要將相同類型的網(wǎng)絡(luò)消息數(shù)據(jù)進(jìn)行合并,比如,如果消息發(fā)送隊(duì)列中存放著A1-A5五個(gè)消息,而A1、A3、A5這三個(gè)消息的類型相同,則將A1、A3、A5合并,得到一個(gè)消息,再將該合并后的消息進(jìn)行發(fā)送。這樣,就將三個(gè)消息合并形成了一個(gè)消息,現(xiàn)有技術(shù)中,需要發(fā)送三個(gè)消息,而本實(shí)施例中,只需要發(fā)送一個(gè)消息,由于手機(jī)網(wǎng)絡(luò)游戲的特點(diǎn),會(huì)產(chǎn)生大量的相同類型的消息,因此,可以將多個(gè)相同類型的消息進(jìn)行合并,并只發(fā)送一個(gè)消息。從而減小了數(shù)據(jù)傳輸?shù)拇螖?shù),也減小了數(shù)據(jù)傳輸?shù)臄?shù)量和大小。
[0047]在該設(shè)定的時(shí)間間隔內(nèi),將消息發(fā)送隊(duì)列中存放的網(wǎng)絡(luò)消息數(shù)據(jù)均發(fā)送完畢后,再等待到達(dá)下一個(gè)設(shè)定的時(shí)間間隔,到達(dá)下一個(gè)時(shí)間間隔點(diǎn)后,再進(jìn)行合并、發(fā)送。
[0048]而在發(fā)送過程中,如果沒有相同類型的網(wǎng)絡(luò)消息數(shù)據(jù),則直接進(jìn)行發(fā)送。
[0049]本發(fā)明實(shí)施例中,步驟I具體為,將手機(jī)用戶在游戲操作時(shí)產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)按照時(shí)間順序依次放入消息發(fā)送隊(duì)列中。以便于按照時(shí)間順序發(fā)送數(shù)據(jù),從而在游戲過程中,能夠按照時(shí)間順序發(fā)生響應(yīng)。
[0050]為了能夠平衡數(shù)據(jù)傳輸次數(shù)與數(shù)據(jù)傳輸量之間的關(guān)系,保證數(shù)據(jù)傳輸速率,本發(fā)明實(shí)施例中,步驟2中,可以將時(shí)間間隔設(shè)定為l-2s。網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送需要滿足兩個(gè)條件,一是用戶操作產(chǎn)生網(wǎng)絡(luò)消息需要發(fā)送,二是間隔上次發(fā)送處理超過一個(gè)固定的可設(shè)置間隔,比如I秒鐘,這兩個(gè)條件需要同時(shí)滿足。
[0051]手機(jī)用戶在游戲操作時(shí)產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù),包括內(nèi)容和時(shí)間戳,相同類型的網(wǎng)絡(luò)消息數(shù)據(jù)包括可覆蓋操作的數(shù)據(jù)和不可覆蓋操作的數(shù)據(jù),如果是不可覆蓋操作的數(shù)據(jù),其內(nèi)容相同,而時(shí)間戳不相同,本發(fā)明實(shí)施例中,對(duì)相同類型的網(wǎng)絡(luò)消息數(shù)據(jù)進(jìn)行合并時(shí),具體為將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)的內(nèi)容合并,保留每個(gè)所述網(wǎng)絡(luò)消息數(shù)據(jù)的時(shí)間戳,得到一個(gè)合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù);如果是可覆蓋操作的數(shù)據(jù),其內(nèi)容和時(shí)間戳均相同,本發(fā)明實(shí)施例中,為了進(jìn)一步減小數(shù)據(jù)傳輸?shù)拇笮。瑢?duì)相同類型的網(wǎng)絡(luò)消息數(shù)據(jù)進(jìn)行合并時(shí),只保留與當(dāng)前時(shí)間接近的時(shí)間戳,得到一個(gè)合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
[0052]本發(fā)明實(shí)施例中,步驟3具體包括如下步驟:
[0053]步驟301,從所述消息發(fā)送隊(duì)列中取出第m個(gè)所述網(wǎng)絡(luò)消息數(shù)據(jù),構(gòu)成網(wǎng)絡(luò)數(shù)據(jù)包;
[0054]步驟302,判斷所述消息發(fā)送隊(duì)列中是否存在與所述網(wǎng)絡(luò)消息數(shù)據(jù)包的類型相同的所述網(wǎng)絡(luò)消息數(shù)據(jù);如果不存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送到游戲服務(wù)器;如果存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)與所述網(wǎng)絡(luò)數(shù)據(jù)包合并,并將合并后的所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送到游戲服務(wù)器;
[0055]步驟303,重復(fù)步驟301-步驟302,直到m = n,其中,K m < n,m、n均為自然數(shù),η為所述消息發(fā)送隊(duì)列中所述網(wǎng)絡(luò)消息數(shù)據(jù)的個(gè)數(shù)。
[0056]采用上述方法,可以遍歷整個(gè)消息發(fā)送隊(duì)列,對(duì)某一時(shí)間間隔內(nèi)的所有的網(wǎng)絡(luò)消息數(shù)據(jù),均進(jìn)行了相同類型的網(wǎng)絡(luò)消息數(shù)據(jù)的檢查,并對(duì)相同類型的消息進(jìn)行合并,然后向游戲服務(wù)器進(jìn)行發(fā)送。與只是對(duì)所有的網(wǎng)絡(luò)消息數(shù)據(jù)進(jìn)行一次相同類型的網(wǎng)絡(luò)消息數(shù)據(jù)檢查相比,其得到的相同類型的網(wǎng)絡(luò)消息數(shù)據(jù)會(huì)更多,合并的次數(shù)會(huì)更多,所以,進(jìn)一步減小了數(shù)據(jù)傳輸?shù)拇螖?shù)和大小。
[0057]實(shí)施例二
[0058]如圖2所示,本發(fā)明實(shí)施例提供了一種手機(jī)用戶端,包括:
[0059]操作模塊:用于手機(jī)用戶進(jìn)行游戲操作,并產(chǎn)生網(wǎng)絡(luò)消息數(shù)據(jù);還用于將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送至消息發(fā)送隊(duì)列模塊中;
[0060]消息發(fā)送隊(duì)列模塊:用于接收所述網(wǎng)絡(luò)消息數(shù)據(jù),并將所述網(wǎng)絡(luò)消息數(shù)據(jù)存儲(chǔ)在消息發(fā)送隊(duì)列中;
[0061]判斷控制模塊:用于判斷所述消息發(fā)送隊(duì)列中是否存在所述網(wǎng)絡(luò)消息數(shù)據(jù),還用于判斷所述消息發(fā)送隊(duì)列中是否存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù);
[0062]網(wǎng)絡(luò)消息發(fā)送模塊:用于將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器。
[0063]該手機(jī)用戶端用于完成上述實(shí)施例一中的手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?。其工作過程和有益效果在此不再贅述。
[0064]實(shí)施例三
[0065]如圖3所示,本發(fā)明實(shí)施例提供了一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)南到y(tǒng),包括實(shí)施例二中的手機(jī)用戶端,還包括游戲服務(wù)器;其中,游戲服務(wù)器用于接收所述手機(jī)用戶端的網(wǎng)絡(luò)消息發(fā)送模塊發(fā)送的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
[0066]該系統(tǒng)用于完成上述實(shí)施例一中的手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒āF涔ぷ鬟^程和有益效果在此不再贅述。
[0067]通過采用本發(fā)明公開的上述技術(shù)方案,得到了如下有益的效果:本發(fā)明通過將網(wǎng)絡(luò)消息數(shù)據(jù)放入消息發(fā)送隊(duì)列中,并按照設(shè)定的時(shí)間間隔,發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),而不是每次都發(fā)送網(wǎng)絡(luò)消息數(shù)據(jù),從而減小了發(fā)送次數(shù);同時(shí),通過合并消息發(fā)送隊(duì)列中相同類型的網(wǎng)絡(luò)消息數(shù)據(jù),極大的減小了網(wǎng)絡(luò)消息數(shù)據(jù)的大?。灰虼?,在手機(jī)網(wǎng)絡(luò)游戲中,數(shù)據(jù)傳輸占用的網(wǎng)絡(luò)資源小,數(shù)據(jù)傳輸速率快,手機(jī)用戶響應(yīng)延時(shí)短,可以使不同類型的手機(jī)網(wǎng)絡(luò)用戶都可以順利的進(jìn)行手機(jī)網(wǎng)絡(luò)游戲,進(jìn)而使不同網(wǎng)絡(luò)的手機(jī)用戶進(jìn)行網(wǎng)絡(luò)游戲交互具有良好的體驗(yàn)。
[0068]本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。
[0069]本領(lǐng)域人員應(yīng)該理解的是,上述實(shí)施例提供的方法步驟的時(shí)序可根據(jù)實(shí)際情況進(jìn)行適應(yīng)性調(diào)整,也可根據(jù)實(shí)際情況并發(fā)進(jìn)行。
[0070]上述實(shí)施例涉及的方法中的全部或部分步驟可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲(chǔ)于計(jì)算機(jī)設(shè)備可讀取的存儲(chǔ)介質(zhì)中,用于執(zhí)行上述各實(shí)施例方法所述的全部或部分步驟。所述計(jì)算機(jī)設(shè)備,例如:個(gè)人計(jì)算機(jī)、服務(wù)器、網(wǎng)絡(luò)設(shè)備、智能移動(dòng)終端、智能家居設(shè)備、穿戴式智能設(shè)備、車載智能設(shè)備等;所述的存儲(chǔ)介質(zhì),例如:RAM、ROM、磁碟、磁帶、光盤、閃存、U盤、移動(dòng)硬盤、存儲(chǔ)卡、記憶棒、網(wǎng)絡(luò)服務(wù)器存儲(chǔ)、網(wǎng)絡(luò)云存儲(chǔ)等。
[0071]最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
[0072]以上通過具體的和優(yōu)選的實(shí)施例詳細(xì)的描述了本發(fā)明,但本領(lǐng)域技術(shù)人員應(yīng)該明白,本發(fā)明并不局限于以上所述實(shí)施例,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,包括如下步驟: 步驟1,將手機(jī)用戶在游戲操作時(shí)產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)放入消息發(fā)送隊(duì)列中; 步驟2,在設(shè)定的時(shí)間間隔內(nèi),判斷所述消息發(fā)送隊(duì)列中是否存在所述網(wǎng)絡(luò)消息數(shù)據(jù),如果不存在所述網(wǎng)絡(luò)消息數(shù)據(jù),則返回步驟I ;如果存在所述網(wǎng)絡(luò)消息數(shù)據(jù),則進(jìn)入步驟3 ; 步驟3,判斷所述消息發(fā)送隊(duì)列中是否存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),如果不存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器;如果存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)合并,并將合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器; 重復(fù)步驟2-步驟3。
2.根據(jù)權(quán)利要求1所述的手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,步驟I具體為,將手機(jī)用戶在游戲操作時(shí)產(chǎn)生的網(wǎng)絡(luò)消息數(shù)據(jù)按照時(shí)間順序依次放入消息發(fā)送隊(duì)列中。
3.根據(jù)權(quán)利要求1所述的手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,步驟2中,所述時(shí)間間隔設(shè)定為l_2s。
4.根據(jù)權(quán)利要求1所述的手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,步驟3中,所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),包括內(nèi)容和時(shí)間戳;則步驟4中,所述將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)合并,具體為,將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)的內(nèi)容合并,保留每個(gè)所述網(wǎng)絡(luò)消息數(shù)據(jù)的時(shí)間戳,得到一個(gè)合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
5.根據(jù)權(quán)利要求4所述的手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,步驟4中,如果所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)為可覆蓋操作,則所述將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)合并,具體為,將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)的內(nèi)容合并,保留與當(dāng)前時(shí)間接近的時(shí)間戳,得到一個(gè)合并后的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,步驟3具體包括如下步驟: 步驟301,從所述消息發(fā)送隊(duì)列中取出第m個(gè)所述網(wǎng)絡(luò)消息數(shù)據(jù),構(gòu)成網(wǎng)絡(luò)數(shù)據(jù)包; 步驟302,判斷所述消息發(fā)送隊(duì)列中是否存在與所述網(wǎng)絡(luò)消息數(shù)據(jù)包的類型相同的所述網(wǎng)絡(luò)消息數(shù)據(jù);如果不存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送到游戲服務(wù)器;如果存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù),則將所述相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù)與所述網(wǎng)絡(luò)數(shù)據(jù)包合并,并將合并后的所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送到游戲服務(wù)器; 步驟303,重復(fù)步驟301-步驟302,直到m = n,其中,I ^ m ^ n,m、n均為自然數(shù),η為所述消息發(fā)送隊(duì)列中所述網(wǎng)絡(luò)消息數(shù)據(jù)的個(gè)數(shù)。
7.一種手機(jī)用戶端,其特征在于,包括: 操作模塊:用于手機(jī)用戶進(jìn)行游戲操作,并產(chǎn)生網(wǎng)絡(luò)消息數(shù)據(jù);還用于將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送至消息發(fā)送隊(duì)列模塊中; 消息發(fā)送隊(duì)列模塊:用于接收所述網(wǎng)絡(luò)消息數(shù)據(jù),并將所述網(wǎng)絡(luò)消息數(shù)據(jù)存儲(chǔ)在消息發(fā)送隊(duì)列中; 判斷控制模塊:用于判斷所述消息發(fā)送隊(duì)列中是否存在所述網(wǎng)絡(luò)消息數(shù)據(jù),還用于判斷所述消息發(fā)送隊(duì)列中是否存在相同類型的所述網(wǎng)絡(luò)消息數(shù)據(jù); 網(wǎng)絡(luò)消息發(fā)送模塊:用于將所述網(wǎng)絡(luò)消息數(shù)據(jù)發(fā)送到游戲服務(wù)器。
8.一種手機(jī)網(wǎng)絡(luò)游戲數(shù)據(jù)傳輸?shù)南到y(tǒng),其特征在于,包括權(quán)利要求7所述的手機(jī)用戶端,還包括游戲服務(wù)器; 所述游戲服務(wù)器用于接收所述手機(jī)用戶端的所述網(wǎng)絡(luò)消息發(fā)送模塊發(fā)送的所述網(wǎng)絡(luò)消息數(shù)據(jù)。
【文檔編號(hào)】H04L29/06GK104468509SQ201410594607
【公開日】2015年3月25日 申請(qǐng)日期:2014年10月29日 優(yōu)先權(quán)日:2014年10月29日
【發(fā)明者】曹丹陽 申請(qǐng)人:北方工業(yè)大學(xué)