国产精品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>

      多進(jìn)程交互方法、系統(tǒng)和服務(wù)器的制造方法_2

      文檔序號(hào):9810380閱讀:來源:國知局
      當(dāng)所述服務(wù)器的分配進(jìn)程存在未分發(fā)的任務(wù)時(shí),所述分配進(jìn)程可通過所述服務(wù)器與另一臺(tái)或多臺(tái)服務(wù)器進(jìn)行通信,將未分發(fā)的任務(wù)分發(fā)至由所述另一臺(tái)或多臺(tái)服務(wù)器啟動(dòng)的多個(gè)擴(kuò)展進(jìn)程,由所述多個(gè)擴(kuò)展進(jìn)程完成任務(wù)并將任務(wù)結(jié)果返回至所述分配進(jìn)程;且所述分配進(jìn)程和多個(gè)擴(kuò)展進(jìn)程之間通過socket進(jìn)行通信。
      [0039]由于本發(fā)明的第二種多進(jìn)程交互方法是基于第一種多進(jìn)程交互方法實(shí)現(xiàn)的,其技術(shù)方案的原理與第一種多進(jìn)程交互方法的技術(shù)方案的原理一致,故本發(fā)明的第二種多進(jìn)程交互方法具有第一種多進(jìn)程交互方法所產(chǎn)生的技術(shù)效果。
      [0040]同理,為實(shí)現(xiàn)服務(wù)器對(duì)多個(gè)客戶端分別發(fā)送的多個(gè)需求信息的快速處理,在基于第一種多進(jìn)程交互方法的構(gòu)思下,本發(fā)明還提供了第三種的多進(jìn)程交互方法,其包括以下步驟:
      [0041 ] 服務(wù)器啟動(dòng)一分配進(jìn)程和多個(gè)任務(wù)進(jìn)程;
      [0042]分配進(jìn)程接收由多個(gè)客戶端分別發(fā)送的多個(gè)需求信息,并生成對(duì)應(yīng)的任務(wù)分發(fā)至多個(gè)任務(wù)進(jìn)程;
      [0043]多個(gè)任務(wù)進(jìn)程分別完成由分配進(jìn)程分發(fā)的任務(wù),并生成相應(yīng)的任務(wù)結(jié)果返回至分配進(jìn)程;
      [0044]分配進(jìn)程將接收到的多個(gè)任務(wù)結(jié)果分別反饋至與其對(duì)應(yīng)的客戶端。
      [0045]進(jìn)一步,所述服務(wù)器中處理器的核數(shù)為N個(gè),N為整數(shù)且其大于I;及步驟服務(wù)器啟動(dòng)一分配進(jìn)程和多個(gè)任務(wù)進(jìn)程中,服務(wù)器啟動(dòng)的多個(gè)任務(wù)進(jìn)程的數(shù)量為N-1個(gè);以及所述分配進(jìn)程和多個(gè)任務(wù)進(jìn)程之間通過socket進(jìn)行通信。
      [0046]進(jìn)一步,所述步驟分配進(jìn)程接收由多個(gè)客戶端分別發(fā)送的多個(gè)需求信息,并生成對(duì)應(yīng)的任務(wù)分發(fā)至多個(gè)任務(wù)進(jìn)程,具體包括以下步驟:
      [0047]分配進(jìn)程接收由多個(gè)客戶端分別發(fā)送的多個(gè)需求信息,并根據(jù)接收到所有客戶端的需求信息的先后順序依次生成分別對(duì)應(yīng)于多個(gè)需求信息的多個(gè)任務(wù),同時(shí)依次建立每一客戶端與其對(duì)應(yīng)的任務(wù)的關(guān)聯(lián)關(guān)系;
      [0048]分配進(jìn)程判斷所有任務(wù)進(jìn)程的工作狀態(tài),若判斷得到所有任務(wù)進(jìn)程的工作狀態(tài)均為忙碌狀態(tài),則分配進(jìn)程不分發(fā)任務(wù)至所有任務(wù)進(jìn)程,并控制所有任務(wù)按先后順序進(jìn)入排隊(duì)等候狀態(tài);若判斷得到存在工作狀態(tài)為空閑狀態(tài)的任務(wù)進(jìn)程,則分配進(jìn)程按先后順序?qū)⑷蝿?wù)分發(fā)至處于空閑狀態(tài)的任務(wù)進(jìn)程中,并控制未分發(fā)的任務(wù)繼續(xù)排隊(duì)等候;
      [0049]及所述步驟多個(gè)任務(wù)進(jìn)程分別完成由分配進(jìn)程分發(fā)的任務(wù),并生成相應(yīng)的任務(wù)結(jié)果返回至分配進(jìn)程,具體包括以下步驟:
      [0050]多個(gè)任務(wù)進(jìn)程接收由分配進(jìn)程分發(fā)的任務(wù)后,均分別預(yù)算任務(wù)處理復(fù)雜度,并將任務(wù)處理復(fù)雜度發(fā)送至分配進(jìn)程;
      [0051]完成任務(wù)處理復(fù)雜度的發(fā)送后,所述多個(gè)任務(wù)進(jìn)程分別獨(dú)立完成由分配進(jìn)程分發(fā)的任務(wù),并生成相應(yīng)的任務(wù)結(jié)果返回至分配進(jìn)程;
      [0052]以及所述步驟分配進(jìn)程將接收到的多個(gè)任務(wù)結(jié)果分別反饋至客戶端中,分配進(jìn)程在接收到多個(gè)任務(wù)結(jié)果后,還分別刪除返回多個(gè)任務(wù)結(jié)果的多個(gè)任務(wù)進(jìn)程在完成任務(wù)前發(fā)送的任務(wù)處理復(fù)雜度;并按先后順序?qū)⑴抨?duì)等候中的任務(wù)分發(fā)至空閑狀態(tài)的任務(wù)進(jìn)程。
      [0053]進(jìn)一步,當(dāng)所述服務(wù)器的分配進(jìn)程存在未分發(fā)的任務(wù)時(shí),所述分配進(jìn)程可通過所述服務(wù)器與另一臺(tái)或多臺(tái)服務(wù)器進(jìn)行通信,將未分發(fā)的任務(wù)分發(fā)至由所述另一臺(tái)或多臺(tái)服務(wù)器啟動(dòng)的多個(gè)擴(kuò)展進(jìn)程,由所述多個(gè)擴(kuò)展進(jìn)程完成任務(wù)并將任務(wù)結(jié)果返回至所述分配進(jìn)程;且所述分配進(jìn)程和多個(gè)擴(kuò)展進(jìn)程之間通過socket進(jìn)行通信。
      [0054]由于本發(fā)明的第三種多進(jìn)程交互方法是基于第一種多進(jìn)程交互方法實(shí)現(xiàn)的,其技術(shù)方案的原理與第一種多進(jìn)程交互方法的技術(shù)方案的原理一致,故本發(fā)明的第三種多進(jìn)程交互方法具有第一種多進(jìn)程交互方法所產(chǎn)生的技術(shù)效果。
      [0055]相應(yīng)地,本發(fā)明還提供了能夠?qū)崿F(xiàn)上述3種多進(jìn)程交互方法的一種多進(jìn)程交互系統(tǒng),其包括主服務(wù)器;所述主服務(wù)器包括一分配進(jìn)程模塊和多個(gè)任務(wù)進(jìn)程模塊;所述分配進(jìn)程模塊接收由客戶端發(fā)送的需求信息,并將所有需求信息生成對(duì)應(yīng)的任務(wù)分發(fā)至所述多個(gè)任務(wù)進(jìn)程模塊;所述多個(gè)任務(wù)進(jìn)程模塊分別完成由分配進(jìn)程分發(fā)的任務(wù),生成相應(yīng)的任務(wù)結(jié)果返回至所述分配進(jìn)程模塊,并由分配進(jìn)程模塊將接收到的多個(gè)任務(wù)結(jié)果反饋至客戶端。
      [0056]進(jìn)一步,所述需求信息為由多個(gè)客戶端分別發(fā)送的單個(gè)需求信息,或者為由多個(gè)客戶端分別發(fā)送的多個(gè)需求信息,或者為由單個(gè)客戶端發(fā)送的多個(gè)需求信息。
      [0057]進(jìn)一步,所述主服務(wù)器中處理器的核數(shù)為N個(gè),N為整數(shù)且其大于I;及所述多個(gè)任務(wù)進(jìn)程模塊的數(shù)量為N-1個(gè);且所述分配進(jìn)程模塊和多個(gè)任務(wù)進(jìn)程模塊之間通過socket進(jìn)行通信。
      [0058]進(jìn)一步,所述多進(jìn)程交互系統(tǒng)還包括一個(gè)或一個(gè)以上的擴(kuò)展服務(wù)器。每個(gè)擴(kuò)展服務(wù)器中包括多個(gè)擴(kuò)展進(jìn)程模塊;當(dāng)所述分配進(jìn)程模塊中存在未分發(fā)的任務(wù)時(shí),所述分配進(jìn)程模塊可通過所述主服務(wù)器與所述擴(kuò)展服務(wù)器進(jìn)行通信,將未分發(fā)的任務(wù)分發(fā)至由所述擴(kuò)展服務(wù)器啟動(dòng)的多個(gè)擴(kuò)展進(jìn)程模塊中,由所述多個(gè)擴(kuò)展進(jìn)程模塊完成任務(wù)并將任務(wù)結(jié)果返回至所述分配進(jìn)程模塊;且所述分配進(jìn)程模塊和多個(gè)擴(kuò)展進(jìn)程模塊之間通過socket進(jìn)行通
      ?目O
      [0059]由于本發(fā)明的多進(jìn)程交互系統(tǒng)能夠?qū)崿F(xiàn)上述3種多進(jìn)程交互方法,則其具有上述3種多進(jìn)程交互方法所產(chǎn)生的技術(shù)效果。
      [0060]另外,本發(fā)明還單獨(dú)提供了一種多進(jìn)程交互服務(wù)器,該多進(jìn)程交互服務(wù)器的結(jié)構(gòu)及功能與為上述任一項(xiàng)所述多進(jìn)程交互系統(tǒng)中的主服務(wù)器的結(jié)構(gòu)和功能相同,也即,該多進(jìn)程交互服務(wù)器包括一分配進(jìn)程模塊和多個(gè)任務(wù)進(jìn)程模塊;所述分配進(jìn)程模塊接收由客戶端發(fā)送的需求信息,并將所有需求信息生成對(duì)應(yīng)的任務(wù)分發(fā)至所述多個(gè)任務(wù)進(jìn)程模塊;所述多個(gè)任務(wù)進(jìn)程模塊分別完成由分配進(jìn)程分發(fā)的任務(wù),生成相應(yīng)的任務(wù)結(jié)果返回至所述分配進(jìn)程模塊,并由分配進(jìn)程模塊將接收到的多個(gè)任務(wù)結(jié)果反饋至客戶端。
      [0061]為了更好地理解和實(shí)施,下面結(jié)合附圖詳細(xì)說明本發(fā)明。
      【附圖說明】
      [0062]圖1是本發(fā)明實(shí)施例1中多進(jìn)程交互方法的流程圖;
      [0063]圖2是本發(fā)明實(shí)施例1中多進(jìn)程交互系統(tǒng)的主服務(wù)器的結(jié)構(gòu)框圖;
      [0064]圖3是本發(fā)明實(shí)施例1中多進(jìn)程交互系統(tǒng)的主服務(wù)器和擴(kuò)展服務(wù)器的結(jié)構(gòu)框圖;
      [0065]圖4是本發(fā)明實(shí)施例2中多進(jìn)程交互方法的流程圖;
      [0066]圖5是本發(fā)明實(shí)施例3中多進(jìn)程交互方法的流程圖。
      【具體實(shí)施方式】
      [0067]實(shí)施例1
      [0068]為了解決現(xiàn)有技術(shù)中通過單進(jìn)程多線程的方式實(shí)現(xiàn)游戲服務(wù)器對(duì)大量玩家發(fā)送的任務(wù)進(jìn)行處理的過程中,采用的鎖機(jī)制導(dǎo)致系統(tǒng)發(fā)生死鎖現(xiàn)象和邏輯處理復(fù)雜度增大的問題,也為解決現(xiàn)有技術(shù)通過一個(gè)進(jìn)程處理多人戰(zhàn)斗邏輯而導(dǎo)致游戲服務(wù)器在必須保證玩家戰(zhàn)斗體驗(yàn)感受良好的情況下只能支撐200個(gè)玩家的數(shù)據(jù)處理,從而限制在線玩家人數(shù)的問題;本發(fā)明旨在利用服務(wù)器的CPU多核配置性能同時(shí)運(yùn)行多個(gè)進(jìn)程,使得多個(gè)進(jìn)程同時(shí)工作完成玩家戰(zhàn)斗邏輯數(shù)據(jù)的處理,同時(shí)也可在該基礎(chǔ)上對(duì)多個(gè)進(jìn)程的完成的任務(wù)類型進(jìn)行分配,使得每個(gè)進(jìn)程僅完成與其相關(guān)的任務(wù),由此大大提高服務(wù)器的處理效率,降低邏輯處理復(fù)雜度,不會(huì)發(fā)生系統(tǒng)死鎖現(xiàn)象,同時(shí)也增大了玩家的在線人數(shù),例如,當(dāng)服務(wù)器的CPU核數(shù)為N時(shí),玩家最大在線人數(shù)可達(dá)(N-1) X 200。以下,具體地說明本發(fā)明實(shí)現(xiàn)多進(jìn)程交互方法。
      [0069]請(qǐng)參閱圖1,本發(fā)明多進(jìn)程交互方法,包括以下步驟:
      [0070]步驟S1:服務(wù)器啟動(dòng)一分配進(jìn)程和多個(gè)任務(wù)進(jìn)程;在本實(shí)施例中,服務(wù)器在啟動(dòng)分配進(jìn)程和多個(gè)任務(wù)進(jìn)程前,已建立分配進(jìn)程和多個(gè)任務(wù)進(jìn)程。為最大限度地利用服務(wù)器的CPU多核配置性能,提高處理效率和同時(shí)在線用戶人數(shù),作為一種更優(yōu)的技術(shù)方案,如果所述服務(wù)器中處理器的核數(shù)為N個(gè),N為整數(shù)且其大于I;則服務(wù)器啟動(dòng)的多個(gè)任務(wù)進(jìn)程的數(shù)量為N-1個(gè)。也即,當(dāng)所述服務(wù)器的處理器(CPU)的核數(shù)為4個(gè)時(shí),服務(wù)器建立并啟動(dòng)3個(gè)任務(wù)進(jìn)程和I個(gè)分配進(jìn)程。
      [0071]步驟S2:分配進(jìn)程接收由多個(gè)客戶端分別發(fā)送的單個(gè)需求信息,并生成對(duì)應(yīng)的任務(wù)分發(fā)至多個(gè)任務(wù)進(jìn)程;
      [0072]步驟S3:多個(gè)任務(wù)進(jìn)程分別完成由分配進(jìn)程分發(fā)的任務(wù),并生成相應(yīng)的任務(wù)結(jié)果返回至分配進(jìn)程;
      [0073]步驟S4:分配進(jìn)程將接收到的多個(gè)任務(wù)結(jié)果分別反饋至與其對(duì)應(yīng)的客戶端。
      [0074]進(jìn)一步,為了更好地分配多個(gè)任務(wù)進(jìn)程的任務(wù),使其能夠更好地完成各自的任務(wù),在本實(shí)施例中,分配進(jìn)程可對(duì)所有需求信息進(jìn)行分類,并生成多種類的任務(wù);且服務(wù)器根據(jù)任務(wù)的種類建立多種類型的任務(wù)進(jìn)程,每一任務(wù)進(jìn)程完成一特定類型的任務(wù)。則分配進(jìn)程可根據(jù)生成的任務(wù)的類型分發(fā)給類型與任務(wù)類型相同的任務(wù)進(jìn)程。例如,以游戲戰(zhàn)斗邏輯數(shù)據(jù)處理說明,游戲戰(zhàn)斗邏輯數(shù)據(jù)的處理任務(wù)一般包括數(shù)據(jù)存儲(chǔ)任務(wù)、完成日志任務(wù)、戰(zhàn)斗邏輯處理任務(wù)等,則在建立任務(wù)進(jìn)程時(shí),可建立負(fù)責(zé)處理數(shù)據(jù)存儲(chǔ)任務(wù)的任務(wù)進(jìn)程、負(fù)責(zé)完成日志任務(wù)的任務(wù)進(jìn)程及負(fù)責(zé)完成戰(zhàn)斗邏輯處理任務(wù)的任務(wù)進(jìn)程等。
      [0075]為保證與需求信息對(duì)應(yīng)的任務(wù)能正常地按先后順序?qū)崿F(xiàn)分發(fā)并由任務(wù)進(jìn)程完成,從而進(jìn)一步保證所有任務(wù)的有序且及時(shí)的處理和保證用戶的體驗(yàn),作為一種更優(yōu)的技術(shù)方案,對(duì)所述步驟S2進(jìn)一步完善,完善后的步驟S2具體包括以下步驟:
      [0076]步驟S21:分
      當(dāng)前第2頁1 2 3 4 5 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1