MMO игровой сервер многосерверного обмена данными - PullRequest
0 голосов
/ 02 января 2012

Я всегда разбираюсь в том, как спроектировать высокопроизводительный игровой сервер, поддерживающий миллионы активных пользователей онлайн и играющих вместе.

Моя архитектура:

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 с несколькими серверами.

1 Ответ

0 голосов
/ 24 марта 2012

Это не так просто! Я никогда не видел MMO с одним огромным сервером, они всегда делятся. Даже простые игры, такие как Ogame, где скорость реакции не является проблемой, не реализуют это. Полагаю, вы могли бы использовать провайдеров масштабируемых серверов, таких как Google App Engine, но не ожидайте хороших пингов!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...