2012-01-02 86 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这样的可扩展的服务器提供商,但不要期待很高的价格!