青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Daly的游戲人生

網絡游戲不同類型的技術分類

    不同的游戲類型需要有不同的技術設計,尤其服務器端,沒有一個通用游戲引擎可以適應所有類型。所以大部分游戲的服務器端引擎都是根據產品需求手工打造,商業引擎通常也得經過別扭的折騰改造才能用得比較好(比如Bigworld ^_^ )。 本文對常見的幾種網絡游戲的服務端技術做一個技術特點的分類。
    約束性能和容量規模的因素歸納起來是:數據共享域,消息廣播域,運算共享域。這幾個因素涉及的對象數量會直接影響了架構涉及,下面分別來說。
 
     分類特征:
     玩家數據總量,同時在線數
     這里是指,玩家登錄后,需要從多大規模的數據中讀取自己的數據。social game全局共享的角色數據(統一世界),隨著玩家數量增多線性增長,往往單機儲存不能滿足需求,需要分布式儲存技術。而對于傳統MMORPG,由于是分服(服務器之間是平衡世界,角色數據相互獨立),相當于天然地用服務器id做了數據分區(而不需要像分布式儲存那樣考慮分區算法的擴展性問題),除了登錄信息,沒有全局數據,單機儲存即可解決問題。
     AOI范圍與頻率
     這里指的是游戲過程中,即時廣播涉及的對象數量以及消息密度,比如同屏玩家數。競技和休閑類游戲通常比較小,而傳統MMORPG通常較大。
     范圍和頻率還影響client間傳輸消息的方式,通常有兩種:client間直傳(P2P); 中心服轉發。從延時來看,廣域網游戲這兩者區別到不大(前提是中心服不卡,其實可以看做一個路由器)。如果廣播范圍 x 頻率較大,中心服的帶寬成本很高(嗯嗯,帶寬是很貴的)。如果采用純P2P,則需要考慮客戶端作弊問題。當然還可以用混合的方法,即中心服監督下的P2P,比如有些競技游戲在服務端也做一層校驗,查出外掛的可能,當然這個不容易實現得好。 大部分情況下,服務器監督一切,最省心。

     AOI跳轉方式
     是指在不同運算共享域和廣播域直接切換的方式,分為無縫和跳轉點。舉個例子,休閑游戲和競技游戲通常是玩家主動點擊進入或退出房間/頻道,不同房間/頻道分隔了廣播域。而即時制MMORPG(比如WOW)區域之間是無邊界的。這兩者區別影響運算性能的擴展性,即實現多進程處理的技術難度。對于前者可以很容易實現多進程分擔處理任務。后者的無縫AOI,要實現多進程的話,在邊界處需要較復雜的進程數據同步技術。
     實時性/同步要求
     網絡延時的前提下,同步方案主要是用戶體驗和數據正確性之間的權衡。競技和動作游戲強調打擊感和位置準確性,需要很高的同步要求。很多游戲采用幀同步方案,即一旦對應幀數據未到,卡住整個客戶端(dota的等待連線)。也有采用運動補償的方式(也稱追影),即客戶端預判,當和服務端位置不一致時,通過加速等方式平滑追上。為了減少延時帶來的影響,一部分計算放在客戶端,關鍵計算等待服務器返回。在等待服務器返回結果的過程中,通常結合美術和技術手段"欺騙"玩家的視覺(比如起手動作),達到較好的體驗。

Social game
     玩法:策略經營類,好友互動
     玩家數量大,冷數據總量大 (海量玩家同一交互域),同時在線高;
     AOI范圍中。頻率低。消息在好友之間分發(好友數量一般在一百以內)
     實時性/同步要求:低,不需要實時。運算較簡單(看成是海量數據的CURD應用)
     技術特點:跟微博,QQ群等傳統互聯網應用比較接近:數據量大,AOI范圍中,實時要求低。主要難點在于讀寫規模大,總數據量大,cache熱度不明顯(無明顯熱數據)。
     性能擴展:依賴于分布式儲存和讀寫技術,與一般社交網絡技術類似。由于需要預先加好友,設定好友數量上限可以限制數據廣播的規模。

休閑棋牌類游戲
     玩家數量大;冷數據總量大;但登錄后通常進入房間。
     房間之間分隔了廣播域,游戲局之間玩家互相獨立(除了聊天頻道)。意味著較容易根據房間和游戲分服/進程,性能擴展容易。
     AOI范圍低(一局游戲的幾個人),實時性一般。運算一般(棋牌算法計算)。
     架構上通常分前端(登錄和房間邏輯)和后端(具體一局游戲),分服設計較容易。通常一個前端要對應很多種不同類型的后端邏輯(各種類型游戲),需要制定一個容易開發和接入的框架。
     容量擴展:由于游戲局的獨立性,分進程/分服做運算擴展比較簡單。 通過分區分房間限制了數據廣播規模。

競技類游戲
     玩法:dota, FPS, 格斗動作類
     AOI范圍低(10人以下),交互頻率高
     實時交互和同步要求極高(技術難點)
     容量擴展:通常與休閑類一樣,先進入房間(有些叫頻道)限制數據廣播規模。不同房間互相獨立,因此也較容易通過增加進程/服務器分散運算規模。

即時制MMORPG
     通常技能有cooldown, 玩家之間可以穿插(沒有動態碰撞檢測),同步要求低于動作類和dota網游。單服同時在線人數有限(1w人左右),邏輯復雜, IO通常單機就可搞定。AOI通常是運算瓶頸,要提高容量就要分進程或分線程。對于區域間無縫世界,在邊界處的對象,由于互相可見且可戰斗,分管兩個區域的進程間需要較復雜的同步機制。比如bigworld用的是對象代理技術,即在原區域是real對象,對端區域建立一個ghost(代理對象), 對real對象的所有狀態改變即時同步到對端進程,反之對ghost操作也同步到real。也就是說玩家A在兩個進程都有自己的副本,且都可寫,需要借鑒分布式技術中,多Writer的數據一致性設計。
     對MMORPG來說,單服人數越高,游戲的社區性和人氣感就越強, 但人數越多,就越容易卡住服務器。現在都是多核的世界,基本上都是多線程/進程的架構了,多writer/reader, 數據同步,鎖這些是常見技術考量點。一般功能模塊交互性不強,分進程/線程難度不大,但AOI這塊分進程要比較折騰。

     題外話
     這兩年公司的校園招聘,程序員的title是虛擬世界架構師(汗 -_-!)。真正的虛擬世界應該是:數據規模大,AOI范圍大,實時交互。以上還沒有一種游戲同時符合幾個特征,都不同程度通過分區/分服/分房間/分場景/分頻道分隔了單個進程的處理規模,單臺服務器的數據規模和帶寬規模。當然,即使技術上可行,玩家腦子同時能處理的對象數比電腦要差多了(呃,試想數萬人同處一個場景,然后走來走去,這個有游戲性可言?),這時候瓶頸不在服務器,超密集的角色,客戶端的渲染效率變成瓶頸。

posted on 2012-07-17 09:45 Daly 閱讀(2917) 評論(5)  編輯 收藏 引用 所屬分類: 游戲開發

評論

# re: 網絡游戲不同類型的技術分類 2012-07-17 10:55 唐詩

我猜你是網易的,呵呵!  回復  更多評論   

# re: 網絡游戲不同類型的技術分類 2012-07-17 12:09 戰魂小筑

不錯, 頂起  回復  更多評論   

# re: 網絡游戲不同類型的技術分類 2012-07-23 12:46 smartlean

邏輯服務器確實是這些技術點。關于“數據規模大,AOI范圍大,實時交互”,有興趣可以交流下~~  回復  更多評論   

# re: 網絡游戲不同類型的技術分類 2013-10-08 12:25 coderchen

@唐詩
羨慕  回復  更多評論   

# re: 網絡游戲不同類型的技術分類[未登錄] 2013-11-07 21:06 star

我也猜樓主是網易的哈哈,學習了~  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久国产欧美| 欧美日韩一区自拍| 黄色成人av网站| 久久久久久亚洲综合影院红桃| 亚洲欧美清纯在线制服| 国产精品久久久久9999高清| 午夜精品美女久久久久av福利| 亚洲视频免费在线| 国产欧美韩国高清| 美女视频网站黄色亚洲| 欧美大片免费| 亚洲免费一区二区| 欧美影院精品一区| 亚洲青色在线| 亚洲香蕉伊综合在人在线视看| 国产精品国产成人国产三级| 欧美一区二区三区免费大片| 久久夜色精品国产| 亚洲视频在线观看三级| 午夜亚洲影视| 亚洲精品美女91| 亚洲视频免费| 亚洲国产欧美一区二区三区同亚洲 | 亚洲性感激情| 午夜亚洲视频| 99精品视频免费在线观看| 亚洲小说欧美另类社区| 在线观看日韩欧美| 一区二区三区高清在线| 国产一区二区看久久| 亚洲久色影视| 亚洲国产裸拍裸体视频在线观看乱了中文 | 久久国产精品亚洲77777| 欧美成年人视频网站欧美| 先锋影音久久久| 欧美国产亚洲视频| 久久经典综合| 国产精品白丝黑袜喷水久久久| 老色鬼精品视频在线观看播放| 欧美日韩成人精品| 欧美大色视频| 一区二区三区在线免费视频| 亚洲小说春色综合另类电影| 亚洲国产日韩一区| 亚洲伦理中文字幕| 欧美日韩一区二区三区免费看| 久久大香伊蕉在人线观看热2| 免费高清在线视频一区·| 欧美一级淫片播放口| 欧美激情精品| 亚洲高清不卡一区| 国精品一区二区| 亚洲婷婷综合久久一本伊一区| 亚洲精品系列| 男人的天堂亚洲在线| 六月婷婷久久| 国产自产2019最新不卡| 亚洲欧美在线高清| 欧美一区激情视频在线观看| 欧美视频精品在线| 一区二区三区久久精品| 9色精品在线| 欧美激情免费观看| 亚洲人成人一区二区三区| 亚洲黄一区二区| 欧美1区免费| 亚洲国产99精品国自产| 亚洲国产综合在线| 开心色5月久久精品| 欧美激情亚洲综合一区| 亚洲人成网站777色婷婷| 免费在线观看精品| 91久久国产自产拍夜夜嗨| 亚洲激情成人网| 欧美精品麻豆| 夜夜嗨av一区二区三区网站四季av | 国产精品三级久久久久久电影| 一区二区欧美日韩| 亚洲欧美视频在线观看| 国产精品一区二区在线观看网站| 亚洲影视九九影院在线观看| 午夜欧美理论片| 国产香蕉97碰碰久久人人| 久久狠狠亚洲综合| 欧美激情精品久久久六区热门| 91久久精品日日躁夜夜躁国产| 欧美精品xxxxbbbb| 国产精品99久久久久久宅男 | 亚洲精品系列| 国产精品红桃| 久久久www免费人成黑人精品 | 亚洲人成亚洲人成在线观看| 在线视频欧美一区| 国产精品爽爽爽| 久久久久久久一区二区三区| 亚洲大片精品永久免费| 亚洲图片在线| 在线观看欧美成人| 欧美日韩国产成人在线免费| 亚洲综合丁香| 亚洲国产精品一区二区尤物区 | 一区二区三区精品视频在线观看| 国产精品人人做人人爽人人添| 欧美一区二区三区四区视频| 亚洲电影在线| 久久久噜久噜久久综合| 亚洲美女尤物影院| 韩国久久久久| 国产精品高潮呻吟| 蜜臀91精品一区二区三区| 在线亚洲一区观看| 欧美国产日本| 久久国产99| 亚洲伊人网站| 亚洲美女尤物影院| 在线看片欧美| 国产日韩欧美亚洲| 欧美性事在线| 欧美久久久久久| 免费观看一区| 欧美在线观看日本一区| 国产精品99久久久久久有的能看| 欧美国产日韩视频| 久久综合九色| 久久精品久久综合| 欧美一级午夜免费电影| 亚洲视频精选| 宅男66日本亚洲欧美视频| 亚洲日本中文字幕区| 在线免费不卡视频| 国产中文一区二区| 国产日本欧美一区二区| 国产精品嫩草久久久久| 欧美日韩精品二区| 欧美日韩久久| 欧美日韩成人在线观看| 欧美大片一区| 欧美激情精品久久久久久大尺度| 久久色在线观看| 久久久亚洲精品一区二区三区| 欧美一级精品大片| 欧美一二三视频| 亚洲午夜激情网页| 国产精品99久久久久久有的能看| 亚洲免费不卡| 一区二区三区欧美在线观看| 日韩亚洲欧美精品| 亚洲午夜精品| 欧美一级久久久久久久大片| 午夜精品福利电影| 久久av最新网址| 另类国产ts人妖高潮视频| 免费观看不卡av| 欧美片网站免费| 国产精品白丝av嫩草影院| 国产精品永久在线| 国产视频一区二区在线观看| 黄色亚洲大片免费在线观看| 永久免费精品影视网站| 亚洲黄色影片| 亚洲午夜激情网页| 欧美一区影院| 男女精品网站| 亚洲精品视频在线观看免费| 中文精品视频| 久久久噜噜噜久久| 欧美日韩国产一区| 国产日产欧产精品推荐色| 亚洲国产精彩中文乱码av在线播放| 亚洲国产va精品久久久不卡综合| 亚洲久色影视| 欧美亚洲视频在线观看| 免费观看国产成人| 一个人看的www久久| 欧美一区亚洲| 欧美日韩国产综合久久| 国产亚洲精品一区二555| 亚洲国产成人porn| 亚洲欧美日韩一区二区在线 | 91久久久精品| 亚洲一区欧美激情| 欧美a级理论片| 国产亚洲成av人片在线观看桃| 亚洲区中文字幕| 午夜免费久久久久| 亚洲国产精品久久久久秋霞不卡| 亚洲私人影院在线观看| 久久精品国产精品亚洲精品| 欧美日韩国产免费观看| 影音先锋久久资源网| 亚洲综合欧美| 亚洲人成久久| 久久久一本精品99久久精品66| 欧美午夜片在线观看| 亚洲激情婷婷| 久久久xxx| 亚洲影音一区| 欧美日韩免费观看一区| 亚洲高清不卡在线| 久久久99久久精品女同性|