国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法以及服務(wù)器與流程

      文檔序號:11731995閱讀:278來源:國知局
      一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法以及服務(wù)器與流程
      本發(fā)明涉及互聯(lián)網(wǎng)
      技術(shù)領(lǐng)域
      ,尤其涉及一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法以及服務(wù)器。
      背景技術(shù)
      :在業(yè)務(wù)開發(fā)的過程中,經(jīng)常面對的一個(gè)難題是,開發(fā)環(huán)境是低延遲、低波動并且網(wǎng)絡(luò)條件非常好的內(nèi)網(wǎng),但是實(shí)際運(yùn)營環(huán)境下,面臨的是高延遲、高波動且復(fù)雜的網(wǎng)絡(luò)情況。很多功能在內(nèi)網(wǎng)調(diào)試中通過,但是在不穩(wěn)定的外網(wǎng)中問題才會暴露出來。目前,通常在客戶端采用第三方軟件模擬網(wǎng)絡(luò)波動,以達(dá)到不穩(wěn)定外網(wǎng)的網(wǎng)絡(luò)條件,請參閱圖1,圖1為現(xiàn)有方案中通過第三方軟件模擬網(wǎng)絡(luò)波動的拓?fù)鋱D,通過在客戶端上安裝第三方軟件引入虛擬驅(qū)動技術(shù),調(diào)整客戶端上網(wǎng)卡的行為,以實(shí)現(xiàn)網(wǎng)絡(luò)延遲及波動的效果。然而,采用第三方軟件模擬網(wǎng)絡(luò)波動,客戶端的數(shù)量及操作系統(tǒng)會影響第三方軟件的部署難度,如果客戶端數(shù)量較多,則需要同時(shí)在各個(gè)客戶端上分別部署第三方軟件,且需要考慮第三方軟件與客戶端操作系統(tǒng)的兼容問題,這將導(dǎo)致第三方軟件的部署難度加大,從而降低了方案的實(shí)用性。技術(shù)實(shí)現(xiàn)要素:本發(fā)明實(shí)施例提供了一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法以及服務(wù)器,無需考慮客戶端的數(shù)量以及操作系統(tǒng),在服務(wù)器側(cè)就能實(shí)現(xiàn)模擬網(wǎng)絡(luò)波動,從而解決了第三方軟件與客戶端操作系統(tǒng)無法兼容的問題,并且不再依賴于第三方軟件的部署,以此提升了方案的實(shí)用性。有鑒于此,本發(fā)明第一方面提供了業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法,包括:接收客戶端發(fā)送的業(yè)務(wù)處理請求;若所述業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則根據(jù)所述業(yè)務(wù)模擬參數(shù)確定為所述客戶端配置的目標(biāo)處理時(shí)延;若接收到所述客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)所述目標(biāo)處理時(shí)延對所述業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。本發(fā)明第二方面提供了一種服務(wù)器,包括:接收模塊,用于接收客戶端發(fā)送的業(yè)務(wù)處理請求;確定模塊,用于若所述接收模塊接收的所述業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則根據(jù)所述業(yè)務(wù)模擬參數(shù)確定為所述客戶端配置的目標(biāo)處理時(shí)延;延時(shí)模塊,用于若接收到所述客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)所述確定模塊確定的所述目標(biāo)處理時(shí)延對所述業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):本發(fā)明實(shí)施例中,提供了一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法,具體為服務(wù)器接收客戶端發(fā)送的業(yè)務(wù)處理請求,若業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則服務(wù)器根據(jù)業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延,若服務(wù)器接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。通過上述方式,無需考慮客戶端的數(shù)量以及操作系統(tǒng),在服務(wù)器側(cè)就能實(shí)現(xiàn)模擬網(wǎng)絡(luò)波動,從而解決了第三方軟件與客戶端操作系統(tǒng)無法兼容的問題,并且不再依賴于第三方軟件的部署,以此提升了方案的實(shí)用性。附圖說明圖1為現(xiàn)有方案中通過第三方軟件模擬網(wǎng)絡(luò)波動的拓?fù)鋱D;圖2為本發(fā)明實(shí)施例中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)系統(tǒng)架構(gòu)圖;圖3為本發(fā)明實(shí)施例中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法一個(gè)交互實(shí)施例示意圖;圖4為本發(fā)明實(shí)施例中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法一個(gè)實(shí)施例示意圖;圖5為本發(fā)明應(yīng)用場景中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)流程示意圖;圖6為本發(fā)明實(shí)施例中服務(wù)器一個(gè)實(shí)施例示意圖;圖7為本發(fā)明實(shí)施例中服務(wù)器另一個(gè)實(shí)施例示意圖;圖8為本發(fā)明實(shí)施例中服務(wù)器另一個(gè)實(shí)施例示意圖;圖9為本發(fā)明實(shí)施例中服務(wù)器另一個(gè)實(shí)施例示意圖;圖10為本發(fā)明實(shí)施例中服務(wù)器另一個(gè)實(shí)施例示意圖;圖11為本發(fā)明實(shí)施例中服務(wù)器另一個(gè)實(shí)施例示意圖;圖12為本發(fā)明實(shí)施例中服務(wù)器另一個(gè)實(shí)施例示意圖;圖13為本發(fā)明實(shí)施例中服務(wù)器一個(gè)結(jié)構(gòu)示意圖。具體實(shí)施方式本發(fā)明實(shí)施例提供了一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法以及服務(wù)器,無需考慮客戶端的數(shù)量以及操作系統(tǒng),在服務(wù)器側(cè)就能實(shí)現(xiàn)模擬網(wǎng)絡(luò)波動,從而解決了第三方軟件與客戶端操作系統(tǒng)無法兼容的問題,并且不再依賴于第三方軟件的部署,以此提升了方案的實(shí)用性。本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”、“第三”、“第四”等(如果存在)是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實(shí)施例例如能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤?。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。應(yīng)理解,本發(fā)明主要應(yīng)用于一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)系統(tǒng),請參閱圖2,圖2為本發(fā)明實(shí)施例中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)系統(tǒng)架構(gòu)圖,如圖所示,本方案中在應(yīng)用服務(wù)器的內(nèi)部增加了一個(gè)網(wǎng)絡(luò)模擬模塊,也就構(gòu)成了本發(fā)明所介紹的可以用于制造延時(shí)以及網(wǎng)絡(luò)波動的服務(wù)器。需要說明的是,圖2中的兩個(gè)客戶端僅為一個(gè)示意,在實(shí)際應(yīng)用中,還可以是其他數(shù)量的客戶端,此處不應(yīng)理解為是對本發(fā)明的限定。在客戶端的操作系統(tǒng)中安裝有應(yīng)用客戶端,其中,該應(yīng)用具體可以為網(wǎng)絡(luò)游戲(英文全稱:onlinegame),也就是指在線游戲,一般有多名玩家通過網(wǎng)絡(luò)進(jìn)行互動娛樂。更具體地,該onlinegame還可以包括動作游戲(英文全稱:actiongame)以及角色扮演游戲(英文全稱:role-playinggame,英文縮寫:rpg),actiongame是電子游戲中的一種,它強(qiáng)調(diào)玩家的反應(yīng)能力和手眼配合,往往存在多個(gè)技能連續(xù)配合釋放,形成連擊形式的玩法,而rpg是另一種游戲類型,在游戲中,玩家扮演虛擬世界中的一個(gè)或者幾個(gè)隊(duì)員角色在特定場景下進(jìn)行游戲。通常這類游戲都是由玩家扮演冒險(xiǎn)者在游戲世界中漫游,而一路上的各種遭遇(例如戰(zhàn)斗、交談、會見重要人物等)則是玩家人物成長以及游戲進(jìn)行的關(guān)鍵所在。于是,應(yīng)用客戶端具體可以是網(wǎng)絡(luò)游戲客戶端,與網(wǎng)絡(luò)游戲服務(wù)器相對應(yīng),網(wǎng)絡(luò)游戲客戶端是為玩家提供本地服務(wù)的程序,一般安裝在普通的用戶機(jī)上,需要與服務(wù)器互相配合運(yùn)行,應(yīng)用服務(wù)器具體可以為網(wǎng)絡(luò)游戲服務(wù)器,即與網(wǎng)絡(luò)游戲客戶端相對應(yīng),安裝在互聯(lián)網(wǎng)數(shù)據(jù)中心(英文全稱:internetdatacenter,英文縮寫:idc)中,為網(wǎng)絡(luò)游戲客戶端提供數(shù)據(jù)轉(zhuǎn)發(fā)與邏輯處理服務(wù)的軟件程序。由于安裝在玩家機(jī)器上的客戶端容易被破解而被利用作弊,所以在網(wǎng)絡(luò)游戲中,復(fù)雜與關(guān)鍵的邏輯都需要在網(wǎng)絡(luò)游戲服務(wù)器上進(jìn)行計(jì)算。需要說明的是,在實(shí)際應(yīng)用中,應(yīng)用客戶端與應(yīng)用服務(wù)器也可以是其他類型的客戶端以及服務(wù)器,此處僅為一個(gè)示意,并不構(gòu)成對本發(fā)明方案的限定。客戶端通過網(wǎng)卡與服務(wù)器建立通信連接,其中,網(wǎng)卡是工作在鏈路層的網(wǎng)絡(luò)組件,是局域網(wǎng)中連接計(jì)算機(jī)和傳輸介質(zhì)的接口,不僅能實(shí)現(xiàn)與局域網(wǎng)傳輸介質(zhì)之間的物理連接和電信號匹配,還涉及幀的發(fā)送與接收、幀的封裝與拆封、介質(zhì)訪問控制、數(shù)據(jù)的編碼與解碼以及數(shù)據(jù)緩存的功能等。應(yīng)用服務(wù)器內(nèi)部的網(wǎng)絡(luò)模擬模塊則是用于制造網(wǎng)絡(luò)時(shí)延和網(wǎng)絡(luò)波動的,能夠模仿在外網(wǎng)條件下產(chǎn)生的網(wǎng)絡(luò)波動。應(yīng)理解,本方案還可以應(yīng)用于多種不同的操作系統(tǒng)中,例如視窗操作系統(tǒng)(英文全稱:windows)、蘋果公司的移動操作系統(tǒng)(英文全稱:iphoneoperationsystem,英文縮寫:ios)以及安卓操作系統(tǒng)等,此處不做限定。為了便于理解,請參閱圖3,圖3為本發(fā)明實(shí)施例中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法一個(gè)交互實(shí)施例示意圖,如圖所示,服務(wù)器和客戶端將執(zhí)行如下步驟:步驟101,首先由客戶端向服務(wù)器發(fā)送業(yè)務(wù)處理請求,該業(yè)務(wù)處理請求中可以包含業(yè)務(wù)模擬參數(shù);步驟102,服務(wù)器在收到業(yè)務(wù)處理請求后,解析得到業(yè)務(wù)模擬參數(shù),然后根據(jù)業(yè)務(wù)模擬參數(shù)確定為該客戶端所配置的目標(biāo)處理時(shí)延;步驟103,客戶端下服務(wù)器發(fā)送業(yè)務(wù)數(shù)據(jù)包,其中,業(yè)務(wù)數(shù)據(jù)包是用于客戶端向服務(wù)器傳輸業(yè)務(wù)數(shù)據(jù)的;步驟104,服務(wù)器可以根據(jù)已經(jīng)計(jì)算得到的目標(biāo)處理延時(shí)對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理,從而完成業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)。下面將從服務(wù)器的角度,對本發(fā)明中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法進(jìn)行介紹,請參閱圖4,本發(fā)明實(shí)施例中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法一個(gè)實(shí)施例包括:201、接收客戶端發(fā)送的業(yè)務(wù)處理請求;本實(shí)施例中,首先,服務(wù)器接收到客戶端發(fā)送的業(yè)務(wù)處理請求,其中,該業(yè)務(wù)處理請求用于觸發(fā)服務(wù)器開始為客戶端提供相應(yīng)的業(yè)務(wù)。具體地,業(yè)務(wù)處理請求可以為游戲管理員(英文全稱:gamemaster,英文縮寫:gm)命令,gm命令是游戲中的內(nèi)置特殊指令,通過這種指令可以實(shí)現(xiàn)正常途徑無法訪問的服務(wù)器功能。一般gm命令會限定只有在特殊環(huán)境下或者特殊權(quán)限的用戶才能使用。202、若業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則根據(jù)業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延;本實(shí)施例中,在業(yè)務(wù)處理請求中還可以攜帶一些業(yè)務(wù)模擬參數(shù),業(yè)務(wù)模擬參數(shù)可以包含但不僅限于基礎(chǔ)延遲時(shí)間以及網(wǎng)絡(luò)波動率?;A(chǔ)延遲時(shí)間是預(yù)先定義的一個(gè)基本時(shí)延值,在這個(gè)基本時(shí)延值的基礎(chǔ)上還應(yīng)考慮到網(wǎng)絡(luò)波動的情況,網(wǎng)絡(luò)波動一般在廣域網(wǎng)會提到,是由于線路的不穩(wěn)定,而導(dǎo)致出現(xiàn)時(shí)通時(shí)斷或瞬斷的現(xiàn)象。網(wǎng)絡(luò)波動會造成路由協(xié)議頻繁進(jìn)行計(jì)算,而這種變化要達(dá)到整個(gè)網(wǎng)絡(luò)的路由統(tǒng)一,即達(dá)到路由收斂是需要一定時(shí)間的,在此期間路由選擇是不準(zhǔn)確的,造成網(wǎng)絡(luò)傳輸受到影響,如果這種變化比較頻繁,造成整個(gè)網(wǎng)絡(luò)的較長時(shí)間的不穩(wěn)定,就叫做網(wǎng)絡(luò)波動。這個(gè)問題對整個(gè)網(wǎng)絡(luò)的穩(wěn)定是非常有害的,嚴(yán)重的時(shí)候會造成整個(gè)網(wǎng)絡(luò)的癱瘓,尤其是在大型廣域網(wǎng)絡(luò)中,網(wǎng)絡(luò)波動是會經(jīng)常出現(xiàn)、不可避免的,這就需要路由協(xié)議對這種現(xiàn)象較好地處理,網(wǎng)絡(luò)設(shè)計(jì)和調(diào)試人員,在設(shè)計(jì)和設(shè)備配置時(shí),也可以采用多種技術(shù),避免這種現(xiàn)象出現(xiàn),提高網(wǎng)絡(luò)的容錯(cuò)能力。于是,服務(wù)器需要根據(jù)業(yè)務(wù)模擬參數(shù)來確定為客戶端所配置的目標(biāo)處理時(shí)延。203、若接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。本實(shí)施例中,當(dāng)服務(wù)器接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包時(shí),可以根據(jù)在步驟202中計(jì)算得到的目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。以此完成對業(yè)務(wù)數(shù)據(jù)進(jìn)行模擬延時(shí)的過程。本發(fā)明實(shí)施例中,提供了一種業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法,具體為服務(wù)器接收客戶端發(fā)送的業(yè)務(wù)處理請求,若業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則服務(wù)器根據(jù)業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延,若服務(wù)器接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。通過上述方式,無需考慮客戶端的數(shù)量以及操作系統(tǒng),在服務(wù)器側(cè)就能實(shí)現(xiàn)模擬網(wǎng)絡(luò)波動,從而解決了第三方軟件與客戶端操作系統(tǒng)無法兼容的問題,并且不再依賴于第三方軟件的部署,以此提升了方案的實(shí)用性。可選地,在上述圖4對應(yīng)的實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法第一個(gè)可選實(shí)施例中,接收客戶端發(fā)送的業(yè)務(wù)處理請求之后,還可以包括:若業(yè)務(wù)處理請求中不包含業(yè)務(wù)模擬參數(shù),則對業(yè)務(wù)數(shù)據(jù)包進(jìn)行業(yè)務(wù)處理,業(yè)務(wù)處理不包含延時(shí)處理。本實(shí)施例中,服務(wù)器在接收到客戶端發(fā)送的業(yè)務(wù)處理請求之后,如果未解析得到業(yè)務(wù)模擬參數(shù),說明本次的業(yè)務(wù)處理請求僅為指示客戶端先服務(wù)器發(fā)送普通的業(yè)務(wù)數(shù)據(jù)包,而并不攜帶用于服務(wù)器進(jìn)行模擬延時(shí)的業(yè)務(wù)模擬參數(shù),于是服務(wù)器根據(jù)接收到的業(yè)務(wù)數(shù)據(jù)包進(jìn)行普通處理。具體地,業(yè)務(wù)處理有個(gè)過程,這個(gè)過程叫做業(yè)務(wù)處理周期,它包括五個(gè)步驟,分別為數(shù)據(jù)輸入;業(yè)務(wù)處理;文件和數(shù)據(jù)庫處理;文件和報(bào)告產(chǎn)生;查詢處理活動。第一步為數(shù)據(jù)輸入,然后對輸入的數(shù)據(jù)進(jìn)行記錄、編碼和編輯,從而轉(zhuǎn)換成實(shí)用的形式。數(shù)據(jù)輸入的過程總是數(shù)據(jù)處理的一個(gè)瓶頸。如何快速準(zhǔn)確的輸入數(shù)據(jù),仍然是一個(gè)很重要的問題。數(shù)據(jù)輸入的方法有兩種,一種是傳統(tǒng)手工方法,一種是源數(shù)據(jù)自動化的方法。傳統(tǒng)的數(shù)據(jù)輸入方法依賴于計(jì)算機(jī)的終端用戶由源文件獲得數(shù)據(jù),這些數(shù)據(jù)周期地送進(jìn)計(jì)算機(jī)系統(tǒng)。第二步為業(yè)務(wù)處理,業(yè)務(wù)處理可以分為批處理和實(shí)時(shí)處理,批處理是定期的周期性的收集源文件,然后進(jìn)行成批處理。實(shí)時(shí)處理在處理業(yè)務(wù)時(shí)及時(shí)的處理完這筆業(yè)務(wù),然后主文件已經(jīng)進(jìn)行了更新,因而這時(shí)的統(tǒng)計(jì)數(shù)據(jù)就反映現(xiàn)時(shí)的真實(shí)情況。實(shí)時(shí)處理也叫做聯(lián)機(jī)處理(英文全稱:onlinetransactionprocessing,英文縮寫:oltp)。第三步為文件和數(shù)據(jù)庫處理,業(yè)務(wù)處理程序中應(yīng)包含維護(hù)數(shù)據(jù)庫的程序,維護(hù)數(shù)據(jù)庫需要保證它能準(zhǔn)確反映業(yè)務(wù)現(xiàn)狀,所以盡管數(shù)據(jù)庫維護(hù)的技術(shù)已很發(fā)達(dá),但它還要有一套很好的運(yùn)行制度和良好的人員素質(zhì),才能保證數(shù)據(jù)庫的真正合用。第四步為文件和報(bào)告產(chǎn)生,這最后一個(gè)處理階段是產(chǎn)生信息產(chǎn)品,也就是報(bào)告和文件。數(shù)據(jù)處理系統(tǒng)所產(chǎn)生的文件叫業(yè)務(wù)文件,業(yè)務(wù)文件有以下幾種:行動文件(英文全稱:actiondocuments)用來啟動接受行動的文件,信息文件(英文全稱:informationdocuments)用來確認(rèn)業(yè)務(wù)已發(fā)生等。第五步為查詢處理活動,無論批處理和實(shí)時(shí)處理均可提供查詢功能。由于信息技術(shù)(英文全稱:informationtechnology,英文縮寫:it)的技術(shù)的發(fā)達(dá),現(xiàn)在越來越多的應(yīng)用可以繼續(xù)實(shí)時(shí)查詢和遠(yuǎn)距離查詢。其次,本發(fā)明實(shí)施例中,在服務(wù)器接收到客戶端發(fā)送的業(yè)務(wù)處理請求之后,如果檢測請求中并不包含業(yè)務(wù)模擬參數(shù),則直接對業(yè)務(wù)數(shù)據(jù)包進(jìn)行處理,也就不需要對其進(jìn)行延時(shí)操作。通過上述方式,可以對業(yè)務(wù)數(shù)據(jù)包進(jìn)行常規(guī)處理,并非針對所有的業(yè)務(wù)數(shù)據(jù)包都進(jìn)行延時(shí)處理,從而保證了方案在實(shí)現(xiàn)方式上的多樣性,同時(shí)增強(qiáng)方案的實(shí)用性和靈活性??蛇x地,在上述圖4對應(yīng)的實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法第二個(gè)可選實(shí)施例中,根據(jù)業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延之后,還可以包括:若未接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則處于業(yè)務(wù)等待狀態(tài)。本實(shí)施例中,如果服務(wù)器業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延之后,如果發(fā)現(xiàn)還未收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包時(shí),則會繼續(xù)處于等待的狀態(tài)。其次,本發(fā)明實(shí)施例中,服務(wù)器根據(jù)業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延之后,如果暫時(shí)未接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則會自動進(jìn)入等待業(yè)務(wù)的狀態(tài)。通過上述方式,即便服務(wù)器端已經(jīng)計(jì)算得到了目標(biāo)處理時(shí)延,也可以暫時(shí)擱置不進(jìn)行處理,等待客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包之后才進(jìn)行延時(shí)處理,從而提升了方案的實(shí)用性和可操作性??蛇x地,在上述圖4對應(yīng)的實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法第三個(gè)可選實(shí)施例中,根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理,可以包括:將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列;根據(jù)目標(biāo)處理時(shí)延,對延時(shí)隊(duì)列中的每個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理。本實(shí)施例中,服務(wù)器根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行處理的具體步驟可以是,首先服務(wù)器將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列,其中,業(yè)務(wù)數(shù)據(jù)包相當(dāng)于是一個(gè)較大的概念,包括了多個(gè)業(yè)務(wù)子數(shù)據(jù)包,其每個(gè)業(yè)務(wù)子數(shù)據(jù)包對應(yīng)于延時(shí)隊(duì)列中的一個(gè)隊(duì)列元素,也就是說,一個(gè)業(yè)務(wù)子數(shù)據(jù)包進(jìn)入一個(gè)隊(duì)列元素。服務(wù)器再根據(jù)目標(biāo)處理時(shí)延,對延時(shí)隊(duì)列中的隊(duì)列元素所對應(yīng)的業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理。其次,本發(fā)明實(shí)施例中,在服務(wù)器根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理的步驟中,首先服務(wù)器將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列,然后根據(jù)目標(biāo)處理時(shí)延,對延時(shí)隊(duì)列中的每個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理。通過上述方式,實(shí)現(xiàn)對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理的目的,采用目標(biāo)處理時(shí)延對每個(gè)業(yè)務(wù)子數(shù)據(jù)包分別進(jìn)行延時(shí)處理,以使得延時(shí)后的每個(gè)業(yè)務(wù)子數(shù)據(jù)包都能模擬網(wǎng)絡(luò)延遲或網(wǎng)絡(luò)波動的特點(diǎn),從而提升方案的實(shí)用性??蛇x地,在上述圖4對應(yīng)的第三個(gè)實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法第四個(gè)可選實(shí)施例中,根據(jù)目標(biāo)處理時(shí)延,對延時(shí)隊(duì)列中的每個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理,可以包括:獲取延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,第一業(yè)務(wù)子數(shù)據(jù)包為延時(shí)隊(duì)列中第一個(gè)業(yè)務(wù)子數(shù)據(jù)包;根據(jù)目標(biāo)處理時(shí)延,對第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理;獲取延時(shí)隊(duì)列中的第二業(yè)務(wù)子數(shù)據(jù)包,其中,第二業(yè)務(wù)子數(shù)據(jù)包為第一業(yè)務(wù)子數(shù)據(jù)包之后相鄰的一個(gè)業(yè)務(wù)子數(shù)據(jù)包;根據(jù)目標(biāo)處理時(shí)延,對第二業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理。本實(shí)施例中,將接收服務(wù)器如何根據(jù)目標(biāo)處理時(shí)延對延時(shí)隊(duì)列中的每個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理。具體為,首先服務(wù)器從延時(shí)隊(duì)列中獲取隊(duì)首的第一個(gè)業(yè)務(wù)子數(shù)據(jù)包,然后先利用計(jì)算得到的目標(biāo)處理時(shí)延對第一個(gè)業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理。接下來在獲取延時(shí)隊(duì)列中的第二個(gè)業(yè)務(wù)子數(shù)據(jù)包之前,仍利用業(yè)務(wù)模擬參數(shù)來計(jì)算第二個(gè)業(yè)務(wù)子數(shù)據(jù)包所對應(yīng)的目標(biāo)處理時(shí)延,于是采用目標(biāo)處理時(shí)延對延時(shí)隊(duì)列中的第二個(gè)業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理。以此類推,服務(wù)器對延時(shí)隊(duì)列中的各個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行目標(biāo)處理時(shí)延的計(jì)算,并且根據(jù)計(jì)算得到的目標(biāo)處理時(shí)延各個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理。再次,本發(fā)明實(shí)施例中,服務(wù)器在對延時(shí)隊(duì)列中的每個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理的過程中,首先獲取延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,然后對該第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理,接著獲取在緊跟在第一業(yè)務(wù)子數(shù)據(jù)包之后的第二業(yè)務(wù)子數(shù)據(jù)包,再對第二業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延遲處理。通過上述方式,可以了解到服務(wù)器在對延時(shí)隊(duì)列中的各個(gè)業(yè)務(wù)子數(shù)據(jù)包進(jìn)行處理時(shí),是按照一定的次序進(jìn)行的,而不是隨機(jī)獲取某個(gè)業(yè)務(wù)子數(shù)據(jù)包就對其進(jìn)行處理,從而避免的延時(shí)處理中出現(xiàn)的時(shí)序混亂的情況,增強(qiáng)方案的實(shí)用性和可靠性??蛇x地,在上述圖4對應(yīng)的第三個(gè)實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法第五個(gè)可選實(shí)施例中,將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列之前,還可以包括:若延時(shí)隊(duì)列處于已寫滿狀態(tài),則獲取延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,所述第一業(yè)務(wù)子數(shù)據(jù)包為延時(shí)隊(duì)列中第一個(gè)業(yè)務(wù)子數(shù)據(jù)包;對第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行業(yè)務(wù)處理,業(yè)務(wù)處理不包含延時(shí)處理。本實(shí)施例中,在服務(wù)器將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列之前,可以先判斷當(dāng)期的延時(shí)隊(duì)列是否被寫滿,如果已經(jīng)寫滿,則服務(wù)器從延時(shí)隊(duì)列中強(qiáng)制取得該延時(shí)隊(duì)列中的第一個(gè)業(yè)務(wù)子數(shù)據(jù)包。具體地,如果客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包速度猛然增快,而且設(shè)置的延時(shí)時(shí)間較長,這就會導(dǎo)致延時(shí)隊(duì)列瞬間被寫滿,假設(shè)延時(shí)隊(duì)列中僅能容納十個(gè)業(yè)務(wù)子數(shù)據(jù)包,且分別對這十個(gè)業(yè)務(wù)子數(shù)據(jù)包進(jìn)行標(biāo)號,延時(shí)隊(duì)列被寫滿后得到如下表1所示的結(jié)果:表1業(yè)務(wù)子數(shù)據(jù)包編號在延時(shí)隊(duì)列中的位置業(yè)務(wù)子數(shù)據(jù)包1第一個(gè)(隊(duì)首)業(yè)務(wù)子數(shù)據(jù)包2第二個(gè)業(yè)務(wù)子數(shù)據(jù)包3第三個(gè)業(yè)務(wù)子數(shù)據(jù)包4第四個(gè)業(yè)務(wù)子數(shù)據(jù)包5第五個(gè)業(yè)務(wù)子數(shù)據(jù)包6第六個(gè)業(yè)務(wù)子數(shù)據(jù)包7第七個(gè)業(yè)務(wù)子數(shù)據(jù)包8第八個(gè)業(yè)務(wù)子數(shù)據(jù)包9第九個(gè)業(yè)務(wù)子數(shù)據(jù)包10第十個(gè)(隊(duì)尾)根據(jù)表1所示的內(nèi)容可知,當(dāng)前的延時(shí)隊(duì)列已處于寫滿狀態(tài),這時(shí)候,服務(wù)器將直接強(qiáng)制按照順序彈出延時(shí)隊(duì)列中的第一個(gè)業(yè)務(wù)子數(shù)據(jù)包,即業(yè)務(wù)子數(shù)據(jù)包1,然后再插入一個(gè)新的業(yè)務(wù)子數(shù)據(jù)包到隊(duì)尾,即業(yè)務(wù)子數(shù)據(jù)包11,于是延時(shí)隊(duì)列如下表2所示:表2業(yè)務(wù)子數(shù)據(jù)包編號在延時(shí)隊(duì)列中的位置業(yè)務(wù)子數(shù)據(jù)包2第一個(gè)(隊(duì)首)業(yè)務(wù)子數(shù)據(jù)包3第二個(gè)業(yè)務(wù)子數(shù)據(jù)包4第三個(gè)業(yè)務(wù)子數(shù)據(jù)包5第四個(gè)業(yè)務(wù)子數(shù)據(jù)包6第五個(gè)業(yè)務(wù)子數(shù)據(jù)包7第六個(gè)業(yè)務(wù)子數(shù)據(jù)包8第七個(gè)業(yè)務(wù)子數(shù)據(jù)包9第八個(gè)業(yè)務(wù)子數(shù)據(jù)包10第九個(gè)業(yè)務(wù)子數(shù)據(jù)包11第十個(gè)(隊(duì)尾)再次,本發(fā)明實(shí)施例中,將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列之前,如果發(fā)現(xiàn)當(dāng)前延時(shí)隊(duì)列中已經(jīng)塞不下更多的業(yè)務(wù)子數(shù)據(jù)包,則直接按照次序直接彈出延時(shí)隊(duì)列頭部的一個(gè)業(yè)務(wù)子數(shù)據(jù)包。并且不對該第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理,而是直接進(jìn)行相應(yīng)的業(yè)務(wù)處理。通過上述方式,可以應(yīng)用于一種邊界情況,也就是當(dāng)客戶端上行的業(yè)務(wù)數(shù)據(jù)包發(fā)送速度猛然增快,而延時(shí)時(shí)間較長時(shí),會導(dǎo)致延時(shí)隊(duì)列很快被塞滿,為了不廢棄這些業(yè)務(wù)數(shù)據(jù)包,就可以不再對延時(shí)隊(duì)列中的業(yè)務(wù)子數(shù)據(jù)包分別進(jìn)行延時(shí)處理,從而保證了業(yè)務(wù)通信的合理性??蛇x地,在上述圖4對應(yīng)的實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法第六個(gè)可選實(shí)施例中,根據(jù)業(yè)務(wù)模擬參數(shù)確定對業(yè)務(wù)數(shù)據(jù)包的目標(biāo)處理時(shí)延,可以包括:按照如下方式計(jì)算目標(biāo)處理時(shí)延:tdelay=α+α×rand(-β,β);其中,tdelay表示目標(biāo)處理時(shí)延,α表示基礎(chǔ)延遲時(shí)間,β表示網(wǎng)絡(luò)波動率,rand()表示區(qū)間內(nèi)隨機(jī)取值。本實(shí)施例中,若業(yè)務(wù)處理請求中攜帶了業(yè)務(wù)模擬參數(shù),那么還可以利用具體的公式來計(jì)算相應(yīng)的目標(biāo)處理時(shí)延。具體為,若業(yè)務(wù)處理請求為gm命令,且gm命令定義為“/gmnetsimudelay_mschurn_ratio”,其中,delay_ms為基礎(chǔ)延遲時(shí)間α,churn_ratio為網(wǎng)絡(luò)波動率β,執(zhí)行g(shù)m命令后,即服務(wù)器接收到客戶端發(fā)出的業(yè)務(wù)處理請求之后,即可知道目標(biāo)處理時(shí)延tdelay在如下范圍內(nèi)波動:tdelay=delay_ms+delay_ms×rand(-churn_ratio,churn_ratio)。假設(shè)執(zhí)行如下gm命令:/gmnetsimu2000.5則最終網(wǎng)絡(luò)延遲tdelay=200+200×rand(-0.5,0.5),即在100毫秒到300毫秒之間波動。gm命令執(zhí)行后,相關(guān)參數(shù)記錄在對應(yīng)連接的用戶數(shù)據(jù)中,實(shí)現(xiàn)對每個(gè)客戶端獨(dú)立的網(wǎng)絡(luò)波動模擬,這樣可以做到在同一個(gè)服務(wù)器上進(jìn)行測試的同時(shí)相互不影響。其次,本發(fā)明實(shí)施例中,服務(wù)器在計(jì)算目標(biāo)處理時(shí)延的過程中,將采用具體的計(jì)算公式來對其進(jìn)行計(jì)算,從而有利于保證計(jì)算結(jié)果的可靠性,同時(shí),也為方案的具體實(shí)現(xiàn)提供了合理的依據(jù),以此提升方案的可行性。為便于理解,下面可以以一個(gè)具體應(yīng)用場景對本發(fā)明中對業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)流程進(jìn)行詳細(xì)描述,具體為:假設(shè)進(jìn)行業(yè)務(wù)數(shù)據(jù)模擬延時(shí)的服務(wù)器為游戲服務(wù)器,而進(jìn)行業(yè)務(wù)數(shù)據(jù)模擬延時(shí)的客戶端為游戲客戶端,則游戲客戶端與游戲服務(wù)器之間進(jìn)行業(yè)務(wù)數(shù)據(jù)模擬延時(shí)的方法如圖5所示,請參閱圖5,圖5為本發(fā)明應(yīng)用場景中業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)流程示意圖。首先,游戲客戶端向游戲服務(wù)器發(fā)送上行數(shù)據(jù)包,即為業(yè)務(wù)數(shù)據(jù)包,該上行數(shù)據(jù)包通過網(wǎng)絡(luò)發(fā)送至游戲服務(wù)器側(cè),游戲服務(wù)器通過網(wǎng)絡(luò)包接收模塊接收該游戲客戶端發(fā)送的上行數(shù)據(jù)包。如果此時(shí)gm命令開啟,則將業(yè)務(wù)數(shù)據(jù)包發(fā)送至波動模擬前端模塊,如果未開啟,則直接發(fā)送至游戲服務(wù)器業(yè)務(wù)處理模塊。由波動模擬前端模塊將上行數(shù)據(jù)包放入先進(jìn)先出的數(shù)據(jù)包隊(duì)列q的尾部,而波動模擬后端模塊根據(jù)gm命令設(shè)置的參數(shù),計(jì)算出隨機(jī)延遲時(shí)間,并根據(jù)此隨機(jī)延遲時(shí)間進(jìn)行不定期喚醒,從數(shù)據(jù)包隊(duì)列q的頭部取出最早插入的數(shù)據(jù),轉(zhuǎn)發(fā)給游戲服務(wù)器業(yè)務(wù)處理模塊。如果客戶端上行數(shù)據(jù)包速度猛然增快,而設(shè)置的延遲時(shí)間較長,會導(dǎo)致數(shù)據(jù)隊(duì)列q瞬間被塞滿,此時(shí),網(wǎng)絡(luò)模擬前端模塊嘗試插入隊(duì)列q時(shí)會失敗,此時(shí)的處理應(yīng)當(dāng)為,服務(wù)器直接強(qiáng)制按順序彈出一個(gè)隊(duì)列q頭部的上行數(shù)據(jù)包,再插入新的上行數(shù)據(jù)包到尾部。下面對本發(fā)明中的服務(wù)器進(jìn)行詳細(xì)描述,請參閱圖6,本發(fā)明實(shí)施例中的服務(wù)器為應(yīng)用于業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)中的服務(wù)器,服務(wù)器30包括:接收模塊301,用于接收客戶端發(fā)送的業(yè)務(wù)處理請求;確定模塊302,用于若所述接收模塊301接收的所述業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則根據(jù)所述業(yè)務(wù)模擬參數(shù)確定為所述客戶端配置的目標(biāo)處理時(shí)延;延時(shí)模塊303,用于若接收到所述客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)所述確定模塊302確定的所述目標(biāo)處理時(shí)延對所述業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。本實(shí)施例中,接收模塊301接收客戶端發(fā)送的業(yè)務(wù)處理請求,若所述接收模塊301接收的所述業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則確定模塊302根據(jù)所述業(yè)務(wù)模擬參數(shù)確定為所述客戶端配置的目標(biāo)處理時(shí)延,若接收到所述客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則延時(shí)模塊303根據(jù)所述確定模塊302確定的所述目標(biāo)處理時(shí)延對所述業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。本發(fā)明實(shí)施例中,提供了一種應(yīng)用于業(yè)務(wù)數(shù)據(jù)的模擬延時(shí)方法的服務(wù)器,具體為服務(wù)器接收客戶端發(fā)送的業(yè)務(wù)處理請求,若業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則服務(wù)器根據(jù)業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延,若服務(wù)器接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理。通過上述方式,無需考慮客戶端的數(shù)量以及操作系統(tǒng),在服務(wù)器側(cè)就能實(shí)現(xiàn)模擬網(wǎng)絡(luò)波動,從而解決了第三方軟件與客戶端操作系統(tǒng)無法兼容的問題,并且不再依賴于第三方軟件的部署,以此提升了方案的實(shí)用性??蛇x地,在上述圖6所對應(yīng)的實(shí)施例的基礎(chǔ)上,請參閱圖7,本發(fā)明實(shí)施例提供的服務(wù)器的另一實(shí)施例中,所述服務(wù)器30還包括:處理模塊304,用于所述接收模塊301接收客戶端發(fā)送的業(yè)務(wù)處理請求之后,若所述業(yè)務(wù)處理請求中不包含業(yè)務(wù)模擬參數(shù),則對所述業(yè)務(wù)數(shù)據(jù)包進(jìn)行業(yè)務(wù)處理,所述業(yè)務(wù)處理不包含延時(shí)處理。其次,本發(fā)明實(shí)施例中,在服務(wù)器接收到客戶端發(fā)送的業(yè)務(wù)處理請求之后,如果檢測請求中并不包含業(yè)務(wù)模擬參數(shù),則直接對業(yè)務(wù)數(shù)據(jù)包進(jìn)行處理,也就不需要對其進(jìn)行延時(shí)操作。通過上述方式,可以對業(yè)務(wù)數(shù)據(jù)包進(jìn)行常規(guī)處理,并非針對所有的業(yè)務(wù)數(shù)據(jù)包都進(jìn)行延時(shí)處理,從而保證了方案在實(shí)現(xiàn)方式上的多樣性,同時(shí)增強(qiáng)方案的實(shí)用性和靈活性??蛇x地,在上述圖6所對應(yīng)的實(shí)施例的基礎(chǔ)上,請參閱圖8,本發(fā)明實(shí)施例提供的服務(wù)器的另一實(shí)施例中,所述服務(wù)器30還包括:等待模塊305,用于所述確定模塊302根據(jù)所述業(yè)務(wù)模擬參數(shù)確定為所述客戶端配置的目標(biāo)處理時(shí)延之后,若未接收到所述客戶端發(fā)送的所述業(yè)務(wù)數(shù)據(jù)包,則處于業(yè)務(wù)等待狀態(tài)。其次,本發(fā)明實(shí)施例中,服務(wù)器根據(jù)業(yè)務(wù)模擬參數(shù)確定為客戶端配置的目標(biāo)處理時(shí)延之后,如果暫時(shí)未接收到客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則會自動進(jìn)入等待業(yè)務(wù)的狀態(tài)。通過上述方式,即便服務(wù)器端已經(jīng)計(jì)算得到了目標(biāo)處理時(shí)延,也可以暫時(shí)擱置不進(jìn)行處理,等待客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包之后才進(jìn)行延時(shí)處理,從而提升了方案的實(shí)用性和可操作性??蛇x地,在上述圖6所對應(yīng)的實(shí)施例的基礎(chǔ)上,請參閱圖9,本發(fā)明實(shí)施例提供的服務(wù)器的另一實(shí)施例中,所述延時(shí)模塊303包括:加入單元3031,用于將所述業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至所述客戶端所對應(yīng)的延時(shí)隊(duì)列;延時(shí)單元3032,用于根據(jù)所述目標(biāo)處理時(shí)延,對所述延時(shí)隊(duì)列中的所述加入單元3031加入的每個(gè)所述業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理。其次,本發(fā)明實(shí)施例中,在服務(wù)器根據(jù)目標(biāo)處理時(shí)延對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理的步驟中,首先服務(wù)器將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列,然后根據(jù)目標(biāo)處理時(shí)延,對延時(shí)隊(duì)列中的每個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理。通過上述方式,實(shí)現(xiàn)對業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理的目的,采用目標(biāo)處理時(shí)延對每個(gè)業(yè)務(wù)子數(shù)據(jù)包分別進(jìn)行延時(shí)處理,以使得延時(shí)后的每個(gè)業(yè)務(wù)子數(shù)據(jù)包都能模擬網(wǎng)絡(luò)延遲或網(wǎng)絡(luò)波動的特點(diǎn),從而提升方案的實(shí)用性??蛇x地,在上述圖9所對應(yīng)的實(shí)施例的基礎(chǔ)上,請參閱圖10,本發(fā)明實(shí)施例提供的服務(wù)器的另一實(shí)施例中,所述延時(shí)單元3032包括:第一獲取子單元30321,用于獲取所述延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,所述第一業(yè)務(wù)子數(shù)據(jù)包為所述延時(shí)隊(duì)列中第一個(gè)所述業(yè)務(wù)子數(shù)據(jù)包;第一延時(shí)子單元30322,用于根據(jù)所述目標(biāo)處理時(shí)延,對所述第一獲取子單元30321獲取的所述第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理;第二獲取子單元30323,用于獲取所述延時(shí)隊(duì)列中的第二業(yè)務(wù)子數(shù)據(jù)包,其中,所述第二業(yè)務(wù)子數(shù)據(jù)包為所述第一獲取子單元30321獲取的所述第一業(yè)務(wù)子數(shù)據(jù)包之后相鄰的一個(gè)業(yè)務(wù)子數(shù)據(jù)包;第二延時(shí)子單元30324,用于根據(jù)所述目標(biāo)處理時(shí)延,對所述第二獲取子單元30323獲取的所述第二業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理。再次,本發(fā)明實(shí)施例中,服務(wù)器在對延時(shí)隊(duì)列中的每個(gè)業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理的過程中,首先獲取延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,然后對該第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理,接著獲取在緊跟在第一業(yè)務(wù)子數(shù)據(jù)包之后的第二業(yè)務(wù)子數(shù)據(jù)包,再對第二業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延遲處理。通過上述方式,可以了解到服務(wù)器在對延時(shí)隊(duì)列中的各個(gè)業(yè)務(wù)子數(shù)據(jù)包進(jìn)行處理時(shí),是按照一定的次序進(jìn)行的,而不是隨機(jī)獲取某個(gè)業(yè)務(wù)子數(shù)據(jù)包就對其進(jìn)行處理,從而避免的延時(shí)處理中出現(xiàn)的時(shí)序混亂的情況,增強(qiáng)方案的實(shí)用性和可靠性??蛇x地,在上述圖9所對應(yīng)的實(shí)施例的基礎(chǔ)上,請參閱圖11,本發(fā)明實(shí)施例提供的服務(wù)器的另一實(shí)施例中,所述延時(shí)模塊303還包括:獲取單元3033,用于所述加入單元3031將所述業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至所述客戶端所對應(yīng)的延時(shí)隊(duì)列之前,若所述延時(shí)隊(duì)列處于已寫滿狀態(tài),則獲取所述延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,所述第一業(yè)務(wù)子數(shù)據(jù)包為所述延時(shí)隊(duì)列中第一個(gè)所述業(yè)務(wù)子數(shù)據(jù)包;處理單元3034,用于對所述獲取單元3033獲取的所述第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行業(yè)務(wù)處理,所述業(yè)務(wù)處理不包含延時(shí)處理。再次,本發(fā)明實(shí)施例中,將業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至客戶端所對應(yīng)的延時(shí)隊(duì)列之前,如果發(fā)現(xiàn)當(dāng)前延時(shí)隊(duì)列中已經(jīng)塞不下更多的業(yè)務(wù)子數(shù)據(jù)包,則直接按照次序直接彈出延時(shí)隊(duì)列頭部的一個(gè)業(yè)務(wù)子數(shù)據(jù)包。并且不對該第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理,而是直接進(jìn)行相應(yīng)的業(yè)務(wù)處理。通過上述方式,可以應(yīng)用于一種邊界情況,也就是當(dāng)客戶端上行的業(yè)務(wù)數(shù)據(jù)包發(fā)送速度猛然增快,而延時(shí)時(shí)間較長時(shí),會導(dǎo)致延時(shí)隊(duì)列很快被塞滿,為了不廢棄這些業(yè)務(wù)數(shù)據(jù)包,就可以不再對延時(shí)隊(duì)列中的業(yè)務(wù)子數(shù)據(jù)包分別進(jìn)行延時(shí)處理,從而保證了業(yè)務(wù)通信的合理性。可選地,在上述圖6所對應(yīng)的實(shí)施例的基礎(chǔ)上,請參閱圖12,本發(fā)明實(shí)施例提供的服務(wù)器的另一實(shí)施例中,所述確定模塊302包括:計(jì)算單元3021,用于按照如下方式計(jì)算所述目標(biāo)處理時(shí)延:tdelay=α+α×rand(-β,β);其中,所述tdelay表示所述目標(biāo)處理時(shí)延,所述α表示基礎(chǔ)延遲時(shí)間,所述β表示網(wǎng)絡(luò)波動率,所述rand()表示區(qū)間內(nèi)隨機(jī)取值。其次,本發(fā)明實(shí)施例中,服務(wù)器在計(jì)算目標(biāo)處理時(shí)延的過程中,將采用具體的計(jì)算公式來對其進(jìn)行計(jì)算,從而有利于保證計(jì)算結(jié)果的可靠性,同時(shí),也為方案的具體實(shí)現(xiàn)提供了合理的依據(jù),以此提升方案的可行性。圖13是本發(fā)明實(shí)施例提供的一種服務(wù)器結(jié)構(gòu)示意圖,該服務(wù)器400可因配置或性能不同而產(chǎn)生比較大的差異,可以包括一個(gè)或一個(gè)以上中央處理器(centralprocessingunits,cpu)422(例如,一個(gè)或一個(gè)以上處理器)和存儲器432,一個(gè)或一個(gè)以上存儲應(yīng)用程序442或數(shù)據(jù)444的存儲介質(zhì)430(例如一個(gè)或一個(gè)以上海量存儲設(shè)備)。其中,存儲器432和存儲介質(zhì)430可以是短暫存儲或持久存儲。存儲在存儲介質(zhì)430的程序可以包括一個(gè)或一個(gè)以上模塊(圖示沒標(biāo)出),每個(gè)模塊可以包括對服務(wù)器中的一系列指令操作。更進(jìn)一步地,中央處理器422可以設(shè)置為與存儲介質(zhì)430通信,在服務(wù)器400上執(zhí)行存儲介質(zhì)430中的一系列指令操作。服務(wù)器400還可以包括一個(gè)或一個(gè)以上電源426,一個(gè)或一個(gè)以上有線或無線網(wǎng)絡(luò)接口450,一個(gè)或一個(gè)以上輸入輸出接口458,和/或,一個(gè)或一個(gè)以上操作系統(tǒng)441,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。其中,cpu422用于執(zhí)行如下步驟:接收客戶端發(fā)送的業(yè)務(wù)處理請求;若所述業(yè)務(wù)處理請求中包含業(yè)務(wù)模擬參數(shù),則根據(jù)所述業(yè)務(wù)模擬參數(shù)確定為所述客戶端配置的目標(biāo)處理時(shí)延;若接收到所述客戶端發(fā)送的業(yè)務(wù)數(shù)據(jù)包,則根據(jù)所述目標(biāo)處理時(shí)延對所述業(yè)務(wù)數(shù)據(jù)包進(jìn)行延時(shí)處理??蛇x地,cpu422還用于執(zhí)行如下步驟:若所述業(yè)務(wù)處理請求中不包含業(yè)務(wù)模擬參數(shù),則對所述業(yè)務(wù)數(shù)據(jù)包進(jìn)行業(yè)務(wù)處理,所述業(yè)務(wù)處理不包含延時(shí)處理。可選地,cpu422還用于執(zhí)行如下步驟:若未接收到所述客戶端發(fā)送的所述業(yè)務(wù)數(shù)據(jù)包,則處于業(yè)務(wù)等待狀態(tài)??蛇x地,cpu422還用于執(zhí)行如下步驟:將所述業(yè)務(wù)數(shù)據(jù)包中的至少一個(gè)業(yè)務(wù)子數(shù)據(jù)包加入至所述客戶端所對應(yīng)的延時(shí)隊(duì)列;根據(jù)所述目標(biāo)處理時(shí)延,對所述延時(shí)隊(duì)列中的每個(gè)所述業(yè)務(wù)子數(shù)據(jù)包依次進(jìn)行延時(shí)處理??蛇x地,cpu422還用于執(zhí)行如下步驟:獲取所述延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,所述第一業(yè)務(wù)子數(shù)據(jù)包為所述延時(shí)隊(duì)列中第一個(gè)所述業(yè)務(wù)子數(shù)據(jù)包;根據(jù)所述目標(biāo)處理時(shí)延,對所述第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理;獲取所述延時(shí)隊(duì)列中的第二業(yè)務(wù)子數(shù)據(jù)包,其中,所述第二業(yè)務(wù)子數(shù)據(jù)包為所述第一業(yè)務(wù)子數(shù)據(jù)包之后相鄰的一個(gè)業(yè)務(wù)子數(shù)據(jù)包;根據(jù)所述目標(biāo)處理時(shí)延,對所述第二業(yè)務(wù)子數(shù)據(jù)包進(jìn)行延時(shí)處理??蛇x地,cpu422還用于執(zhí)行如下步驟:若所述延時(shí)隊(duì)列處于已寫滿狀態(tài),則獲取所述延時(shí)隊(duì)列中的第一業(yè)務(wù)子數(shù)據(jù)包,所述第一業(yè)務(wù)子數(shù)據(jù)包為所述延時(shí)隊(duì)列中第一個(gè)所述業(yè)務(wù)子數(shù)據(jù)包;對所述第一業(yè)務(wù)子數(shù)據(jù)包進(jìn)行業(yè)務(wù)處理,所述業(yè)務(wù)處理不包含延時(shí)處理。可選地,cpu422還用于執(zhí)行如下步驟:按照如下方式計(jì)算所述目標(biāo)處理時(shí)延:tdelay=α+α×rand(-β,β);其中,所述tdelay表示所述目標(biāo)處理時(shí)延,所述α表示基礎(chǔ)延遲時(shí)間,所述β表示網(wǎng)絡(luò)波動率,所述rand()表示區(qū)間內(nèi)隨機(jī)取值。上述實(shí)施例中由服務(wù)器所執(zhí)行的步驟可以基于該圖13所示的服務(wù)器結(jié)構(gòu)。所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對應(yīng)過程,在此不再贅述。在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(英文全稱:read-onlymemory,英文縮寫:rom)、隨機(jī)存取存儲器(英文全稱:randomaccessmemory,英文縮寫:ram)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。以上所述,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。當(dāng)前第1頁12
      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1