MMORPG, некоторые MOBA, такие как League of Legends или даже StarCraft 2, обычно вынуждают вас выбрать сервер. Обычно это США, ЕС и ЮВА, в MMORPG много по каждому месту. Я вижу, что это было необходимо несколько лет назад, но теперь с появлением AWS и аналогичных предложений, которые позволяют беспрепятственно масштабировать свою «мощность сервера», почему по-прежнему существуют отдельные серверы?
Мой ход мыслей подобен этому (на примере «Звездных войн: Старая Республика»): - Вы всегда находитесь на одной планете, изолированном «экземпляре» от других планет. - Если на одной планете слишком много людей, SW: TOR создает новый экземпляр мира и помещает туда игроков. - Если вы покидаете мир / переключаете инстансы, у вас есть экран загрузки
Так почему же игра не может создать экземпляр для этой планеты? Этот экземпляр (и только этот) содержит ваши текущие данные в базе данных и управляет x игроками. Как только в этом экземпляре появятся игроки х-50, запустится новый сервер и в этом экземпляре появятся новые люди. 50 мест зарезервированы для перехода в вашу группу и т. Д.
Для всех трех основных регионов может быть случай, когда задержка будет низкой, но это позволит вам по-прежнему играть с другими игроками, например, с SEA, если вы можете жить с задержкой в 140 мс (что по-прежнему ничего не значит).
Всякий раз, когда вы переключаете экземпляр или отправляетесь в другой мир, ваш текущий сервер передает все ваши данные следующему серверу, гарантируя, что вам не нужна одна большая централизованная база данных. У вас все еще мог бы быть тот, который периодически получает обновления для целей анализа.
Когда вы выходите из системы или серверы теряют соединение, данные могут быть переданы в массивную базу данных, которая оптимизирована для хранения данных. Затем серверы экземпляров могут быть оптимизированы для высокой пропускной способности.
Есть ли какая-то конкретная причина, по которой это не сработает? Есть ли другие проблемы, которые мне не хватает?