2012-01-02 87 views
0

我總是如何設計一款高性能的遊戲服務器,支持數百萬熱門用戶在線和一起玩。MMO遊戲服務器多服務器交換數據

我的架構:

Master server: 
    receive client connection 
    base on user id 
    dispatch to slave servers 
    client connect to slave server again. 

Slave server: 
    load user profile from data server, and won't load again before user disconnect. 
    *broadcast new events to users in the same room/channel/nearby* 

所以,我的問題是,當我想廣播新的事件給用戶,但這些用戶不能在同一臺服務器上,所以這個事件不能發送給該用戶直接,但必須連接另一臺服務器,併發送它。

更重要的是,在計算用戶對戰時,兩臺服務器之間必須要了解對方的信息,所以兩臺服務器必須在內存中加載2個用戶,這會浪費太多內存。

看來我的架構出現了大問題,我想知道多服務器的MMO遊戲服務器的正確架構。

回答

0

這並不容易!我從來沒有看到一個巨大的服務器的MMO,他們總是分裂。即使簡單的遊戲,如響應速度不是問題的Ogame,也不要執行此操作。我想你可以使用像Google App Engine這樣的可擴展的服務器提供商,但不要期待很高的價格!