c # — Разработка серверной части многопользовательской онлайн-игры

У меня есть ключевой вопрос в разработке сервера многопользовательской игры. Мне нужна лучшая концепция, тогда я буду использовать это как в C #, так и в PHP.
В настоящее время я хочу сделать такую ​​игру:
многопользовательская ракетка онлайн

ракетка для кнопок моя, а верхняя — твоя.
Мне нужно передавать данные каждые 40 миллисекунд, чтобы обновить экран. Первой идеей было написать веб-сервис, который вычисляет текущую позицию объектов и отвечает клиентам как JSON. но проблема была в данных на сервере. Я не мог поделиться данными сеанса между клиентами. Я думал использовать БД, но это было достаточно медленно, чтобы не использовать! Есть ли способ обмена данными между различными клиентами одного веб-сервиса?
и второй вопрос: хорошо ли использовать веб-сервисы?
Я думал о сокетах, но дело в том, сколько портов у нас на сервере, чтобы отвечать на запросы клиентов?
и если веб-сервисы удобны в использовании, то как мне продлить время игры на сервере, когда какой-либо клиент не запрашивает данные, а веб-сервис недоступен?

Благодарю.

1

Решение

Сокеты, как правило, намного быстрее, чем веб-сервисы. Вы можете использовать их в своей реализации.

Я думал о сокетах, но дело в том, сколько портов у нас на сервере, чтобы отвечать на запросы клиентов

Им не требуется порт для каждого соединения. Для службы требуется один порт, и вы можете создать множество объектов сокетов между клиентом и сервером.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]