這篇blog題目涉及的范圍真大!以至於在這里需要先寫一篇前言把范圍縮小。選擇寫這樣一個系列的文章,主要是想給工作了兩年的自己一個交代,或者說是一個階段性的總結。兩年時間里,房價依然再漲,工資依然跑不贏CPI,某人依然在仰望星空。期間很多夢碎了,很多還在堅持着,生活過得波瀾不驚。而我也從剛畢業是的青澀逐步蛻變為“老油條”。不知道是一種悲哀、還是一種悲哀、還是一種悲哀....... 慶幸的是夢還在繼續,一顆倔強的心還在堅持。希望明天的明天被束縛的心能回到夢開始的地方!
==========================我只是條分割線========================
作為本系列blog的開篇前言,本文主要明確網絡游戲服務器構架的設計目標,並作出一些限定。因為本系列所討論的服務器端構架只適用於部分網游,並不是一個通用的網游服務器構架。
設計目標:
- 支持的游戲類型:大型MMORPG游戲,類似魔獸世界(有大世界,不是開房間式)。
- 連接方式:以TCP長連接為主。動作類游戲並不在本文討論范圍內(因為本人並沒有參與開發過動作類游戲),如果有時間可以研究一下龍之谷(部分使用UDP傳輸)、天下貳(全部使用UDP傳輸),類似的逆向工程網上已經有人做了。
- 在線人數:保證最大1w人左右在線還能比較流暢的運行。如果在線人數大於1w對客戶端的同學和策划的同學都是很大的挑戰。
- 服務器可以以多進程的形式布置在不同的物理主機上,也可以布置在同一主機上,考慮效率的同時兼顧可擴展性。
- 能在普通配置的服務器上流程運行,物理主機配置:按照DELL 1950、DELL R610上32G內存的標准來部署主機,一般公司是用不起WOW的小霸王的.......
- 內存不用過多的考慮,因為現在服務器的內存已經很大了。減少內存使用會放到模塊設計、詳細設計里。不在構架分析的討論范圍內。
- 偏格斗的游戲會對CPU和帶寬要求比較高,設計時需要進行討論。
設計目標就這些多說無益,核心就是設計出能夠支持類似魔獸世界的大型MMORPG游戲的網游服務器端。具體的設計以及設計時的取舍、需要解決的問題等,會在后續的文章進行詳細的介紹。
