網(wǎng)游服務(wù)器架構(gòu)設(shè)計_第1頁
網(wǎng)游服務(wù)器架構(gòu)設(shè)計_第2頁
網(wǎng)游服務(wù)器架構(gòu)設(shè)計_第3頁
網(wǎng)游服務(wù)器架構(gòu)設(shè)計_第4頁
網(wǎng)游服務(wù)器架構(gòu)設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、大寶(sodme) 2010.12.20器ServerWorld Server1World Server2erAccount ServerCore ServerCertifyServer玩家2服務(wù)器列表信息ServerLoginServerCacheSqlDB Serv認(rèn)證及第三方服務(wù)認(rèn)證及第三方服務(wù)器MySqlDB ServerGame Server玩家3服務(wù)器列表信息 韓版架構(gòu):一組七類進程,玩家三線連接 韓版優(yōu)劣:架構(gòu)復(fù)雜,難以查證、跟蹤與調(diào)試,難以上手、維護與培訓(xùn),不穩(wěn)定,性能差,邏輯易混亂, 最高僅1500人;優(yōu)點是同內(nèi)容下玩家數(shù)量可擴充單服 國服架構(gòu):一組兩類進程,玩家單線連接 國

2、服優(yōu)劣:最高2900人,單線管理不易擴充單服4 何謂架構(gòu)(作為動詞) ?“架構(gòu)”就是程序人員對需求的設(shè)計,對各個產(chǎn)品、各種功能、各部分模塊及流程多種需求的設(shè)計 有哪些架構(gòu)(作為名詞) ?網(wǎng)絡(luò),邏輯,數(shù)據(jù)流,功能(策劃案),配置表(數(shù)據(jù)結(jié)構(gòu)) 架構(gòu)從哪里來?從需求中來。哪些需求?玩法的、安全的、性能的、運營的,甚至是團隊成長的 如何成長為架構(gòu)師?學(xué)習(xí),參考,實踐,驗證,改進5 設(shè)計原則:簡單,可控,穩(wěn)定,高性能 一些具體的設(shè)計目標(biāo)(略舉一二):大二的學(xué)生都可以讀得懂、能寫、能控因事沒來上班時,有人能動你的代碼 不怕有問題,隨時可追查 設(shè)計框架:一組服務(wù)器僅含兩個進程,DB負(fù)責(zé)數(shù)據(jù)緩存、賬號認(rèn)證、

3、計費通信等第三方接口接入;GAME 負(fù)責(zé)游戲邏輯、玩法、游戲內(nèi)容構(gòu)建6第三方接口1第三方接口2Mysql服務(wù)器程序-第三方消息隊列-第三方消息隊列-數(shù)據(jù)庫消息隊列第三方接口處理邏輯數(shù)據(jù)庫處理邏輯-網(wǎng)絡(luò)轉(zhuǎn)化成第三方賬號及角色緩存管理-網(wǎng)絡(luò)轉(zhuǎn)化成數(shù)據(jù)庫網(wǎng)絡(luò)包處理邏輯-網(wǎng)絡(luò)消息隊列Game Server7 數(shù)據(jù)緩存策略:賬號列表管理,同賬號下最多三角色數(shù)據(jù)緩存(讀取規(guī)則,緩存上限,調(diào)度策略) 全局性數(shù)據(jù)存取策略:開機即讀取,定時保存,全局快照 第三方接口通信策略:基于防御性的接口互訪規(guī)則(日志審計,邏輯防御),基于驗證重發(fā)的通信規(guī)則8 嚴(yán)重問題:DOWN機(內(nèi)存,數(shù)據(jù)庫訪問,登錄堵塞),數(shù)據(jù)錯亂,數(shù)

4、據(jù)不保存 解決方法:盡可能簡單的表結(jié)構(gòu)盡可能簡單的SQL語句定長的數(shù)組可控的壓力閥值(由GAME控制) 總目標(biāo):不要讓單玩家掌控你的機器資源9DB Server客戶端物品系統(tǒng)網(wǎng)絡(luò)消息處理網(wǎng)絡(luò)消息接收對象管理系統(tǒng)技能、BUFF系統(tǒng)對象與場景處理場景管理系統(tǒng)怪物AI任務(wù)系統(tǒng)定時器處理-發(fā)送數(shù)據(jù)消息隊列腳本消息處理數(shù)據(jù)包發(fā)送10 幀輪詢機制:對象管理體系;網(wǎng)絡(luò)、邏輯、AOI分線程;主邏輯一秒三幀,網(wǎng)絡(luò)發(fā)送一秒六幀 消息隊列機制:網(wǎng)絡(luò)消息,AI消息,位置同步消息, 數(shù)據(jù)存取消息,定時器消息,腳本調(diào)用消息 引擎與腳本:開發(fā)速度、穩(wěn)定性、熱更新11 邏輯的驅(qū)動來源:網(wǎng)絡(luò)消息,AI消息,定時器消息三大驅(qū)動方

5、式 邏輯的驅(qū)動方式:在主循環(huán)幀中分別處理來自于各消息隊列的消息(便于統(tǒng)一管理、性能監(jiān)控) 具體的內(nèi)容組織:玩家,NPC、怪、寵物,、師徒、,物品、裝備,任務(wù)、活動等12 對象的層級:簡單動態(tài)對象(無邏輯的活物、空艇等),復(fù)雜動態(tài)對象(NPC,怪物,玩家),對象集合(師徒,組隊,王國) 個體對象設(shè)計:定義屬性,方法,常用接口,接口保護,設(shè)定數(shù)據(jù)刷新、存取規(guī)則 集合對象設(shè)計:定義管理方式,數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)同步方法,異常處理原則13 基本模型:EPOLL 數(shù)據(jù)的memcpy:一次性接收,無memcpy;發(fā)數(shù)據(jù)時 有一次memcpy。數(shù)據(jù)緩存事先建立。 數(shù)據(jù)收發(fā):統(tǒng)一的收取消息隊列,處理函數(shù);單個玩家獨

6、立的發(fā)送隊列,按幀發(fā)送,小包拼接。最多:位置,對象加載,狀態(tài)。 性能:2900人在線,80M帶寬14 基本模式:狀態(tài)+消息,主循環(huán)輪詢 狀態(tài):空閑,狂燥,逃跑,返回 消息:初始化,處理,傷害,到達,結(jié)束 狀態(tài)與消息的關(guān)系:由消息實現(xiàn)狀態(tài)間跳轉(zhuǎn),改變AI 策略,由狀態(tài)的自輪詢實現(xiàn)怪物智能的自我觸發(fā)15 基本模式:以時間尺作為排隊方式,只執(zhí)行當(dāng)前時間刻度的邏輯(借鑒linux源代碼) 主要功能:提供自維護邏輯的運行(技能、BUFF、安全監(jiān)控、統(tǒng)計等) 基本實現(xiàn):引擎層實現(xiàn)架構(gòu),向腳本層提供定時器訪問接口,腳本層通過接口訪問 相關(guān)功能:添加定時器(一次性、輪詢、按條件控制),回調(diào)函數(shù),定時器銷毀16

7、 基本模式:行走、戰(zhàn)斗等玩家主要行為,皆通過狀態(tài)機機制實現(xiàn),“狀態(tài)+消息”的基本觸發(fā)方式 狀態(tài):坐下,近攻,遠攻,站立,移動等 消息:設(shè)定狀態(tài),刪除狀態(tài),開始,終止等 關(guān)系:維護一定時間,且與其他狀態(tài)有互斥等交互行為的可以設(shè)定為一個狀態(tài)17 基本內(nèi)容:場景靜、動態(tài)邏輯加載,區(qū)域自觸發(fā)邏輯, 對象可見、范圍相關(guān)的邏輯(傷害范圍,可見范圍等) 基本方式:稱之為LinkMap的數(shù)據(jù)結(jié)構(gòu),按“層+二維數(shù)組”的模式組織場景里的靜、動態(tài)可管理資源。層與層之間可設(shè)定可見性、可計算性;二維數(shù)組內(nèi)的各對象之間可以設(shè)定可見性18 腳本化,熱更新,多日志 單一系統(tǒng)的在線開關(guān)控制 單一系統(tǒng)的資源統(tǒng)計 版本的快速迭代、

8、驗證(30分鐘解決問題) 單個技術(shù)人的全面素質(zhì)培養(yǎng),獨當(dāng)一面,靈活應(yīng)對 預(yù)估風(fēng)險,作好準(zhǔn)備方案(既要考慮壞,也要考慮好) 基于互不信任的架構(gòu)和邏輯思路19 DB:數(shù)據(jù)回檔,不保存,當(dāng)機,認(rèn)證無返回 物品系統(tǒng):index不對應(yīng),命名不統(tǒng)一,溝通不充分 交易系統(tǒng):日志不充分,追查難,多數(shù)據(jù)存放點 狀態(tài)機系統(tǒng):控制太精確,雙方無主從關(guān)系,狀態(tài)不同步20 盡量減少對第三方庫的使用和依賴 盡量做到代碼自解釋 盡量不使用技巧性過強的設(shè)計方法 盡量少上設(shè)計模式的當(dāng) 代碼是為他人而寫 實踐出真知,預(yù)防抗風(fēng)險,分享促成長,團隊強才是真的強21 速度:從策劃案開始交付實施之日,兩周之內(nèi)出一個中型玩法或中型系統(tǒng) 質(zhì)量:“簡單、可控”保證了系統(tǒng)穩(wěn)定,防御性編程思維保證了留有后路,30分鐘內(nèi)解決服務(wù)器問題(要么修正錯誤,要么關(guān)閉局部系統(tǒng)),不停機更新 團隊:人人都可以雙端開發(fā),獨當(dāng)一面;技術(shù)全面; 技能素質(zhì)和心理素質(zhì)全面22設(shè)計本天成,妙手偶得之23 Google talk & mail: 新浪微博: http:/t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論