Вот краткий обзор/контекст того, где я нахожусь. В настоящее время я работаю над игрой, в которой одновременно будет много подключенных игроков. Сервер - это брандмауэр ASP.net/C#, а передняя часть - в javascript.
В любой момент времени мне нужно знать позицию x, y каждого игрока и передавать все подключенные игроки, чтобы клиент обновил браузер. То, что я рассматривал, заключается в том, что в любой момент, когда игрок перемещается, я отправляю свои координаты через вызов ajax на сервер, который будет обновлять объект игрока, где у меня есть наблюдатель, слушающий состояния грязных игроков.
Тем не менее, я немного потерял, как фактически передавать эти данные всем другим клиентам. Также использование ajax-вызова для этого похоже на то, что он может быть медленным.
Со всем этим сказано,
Какие методы доступны для отправки данных подключенным клиентам через HTTP? Это игра на основе браузера. Мне нужен какой-то цикл на клиенте, который постоянно запрашивает обновления для всех игроков? и если да, то есть ли экономически эффективный способ сделать это, не замедляя все?
Я провел некоторое исследование по внедрению каких-либо подключений сокетов к серверу/клиенту TCP и использованию потоковой передачи - но я прочитал несколько статей о том, что потоки не были лучшим решением для приложений на основе asp.net. Я не хочу спускаться с этой кроличьей тропы, если она здесь не применяется.
Любая предоставленная информация будет принята с благодарностью!
Спасибо.
SignalR поможет вам работать в режиме реального времени с помощью двунаправленной связи между сервером и клиентом.