Всем доброго утречка кто уже встал и залез на сайтик.=). Вот у меня есть элементарный сервер в котором обслуживание клиентов проводится следующим образом: "Пришел клиент и получил свой личный сокет и поток". На мой взгляд это правильно. Мне нужна помощь в осознании того, как работают больше сервера(которые могут держать 10 000+ игроков). Я так понимаю программно реализовать поддержку такого кол-ва народу нереально из-за аппаратных ограничений, следовательно подключаются дополнительные машины. Так вот, приложение запускается одно и выполняется грубо говоря несколькими машинами или же нужно иметь несколько однотипных серверов запущенных на разных машинах(в таком случае возникает вопрос о взаимодействие игрока с 1-ой машины с игроком на 2-ой). И если что-то непонятно в заданных вопросах просьба написать что именно непонятно.
З.Ы. Я не хочу видеть здесь всякие левые отсылки, поэтому сразу прошу отвечать только людей которые знают как разрабатываются и в каких условиях используются ММО-сервера
Один из вариантов: Создание мастер-сервера и обычных серверов.
Клиент подключается к мастер-серверу и получает указание, к какому из обычных серверов надо подключиться. Переподключается к указанному мастер-сервером обычному серверу и работает с ним. Каждый из обычных серверов передаёт данные с мастер-сервером, будто клиент с обычным.
Я рассказал вкратце, но думаю, ты понял, о чём я. Если непонятно - контакты у меня в подписи, разжую подробней.
Плюс метода в снижении нагрузки на канал, а как следствие меньше лаг у клиента. Минус в требовании дополнительных каналов и серверов. Не превращайте форум в чат. Пишите более развернуто и понятно - всё равно вас попросят объяснить подробнее. Алгоритмы, программирование, оптимизация, тестирование, ведение проектов. Ищу художника, дизайнера, тестера, программистов С и С++ Обучаю процессам разработки и программированию.
Такая система хорошо подойдет, если мир разбит на части. Как в WoT и EVE к примеру.
Если мир целостный, как в л2 к примеру, то там просто всю логику раскидывают по нескольким серверам. К примеру, один сервак отвечает за квесты, другой за нпс, третий за бд, четвертый еще за какуюнить хрень :-)
IIyxMASTER, какой мир, ты о чём? Читай внимательней.
Не превращайте форум в чат. Пишите более развернуто и понятно - всё равно вас попросят объяснить подробнее. Алгоритмы, программирование, оптимизация, тестирование, ведение проектов. Ищу художника, дизайнера, тестера, программистов С и С++ Обучаю процессам разработки и программированию.