Проблема, с которой я сталкиваюсь, заключается в том, чтобы смоделировать канал связи между двумя пользователями веб-сайта (например, игрового сайта), используя исключительно технологии, упомянутые в названии.
Недавно я разработал веб-сайт по шахматам в Интернете, идея которого заключалась в том, чтобы дать пользователям возможность играть в «живые» матчи, а не только в длительные игры, в которых вы могли бы сделать ход, а затем вернуться через 1-15. дней, чтобы увидеть, ответил ли ваш оппонент. И то, как работает этот игровой движок, подразумевает отправку асинхронных запросов на сервер, как для обновления информации, относящейся к игре (в случае, если вы делаете ход), так и для проверки того, что что-то изменилось (если вы ждете, когда противник двигаться).
Чтобы лучше объяснить это ... игрок, чей ход (конечно, браузер) отправляет асинхронный вызов. просьба обновить информацию об игре, именно тогда, когда он сделает свой ход. Тем временем оппонент отправляет PERIODIC запросы, «спрашивая», изменилось ли что-нибудь. Если что-то меняется, роли обновляются после обновления доски.
Таймеры отстают от функциональности движка, поэтому мой вопрос к вам таков: как бы вы могли симулировать ком-канал между двумя игроками, стараясь не создавать слишком большую нагрузку на сервер, но также обновлять игры? настолько быстро, насколько это возможно, для того, чтобы сохранить «живое» чувство к нему. Это наиболее важно в 1-минутных играх (одна из доступных категорий). Потому что в этом случае запросы должны выполняться ОЧЕНЬ часто (не менее 1 секунды). Но ответы сервера могут затянуться, на сервере будет много стресса, если одновременно доступны сотни игр и т. Д., Так что вы видите мою проблему.
Я с нетерпением жду, чтобы услышать от вас, ребята, и выбрать ваш мозг, если у вас есть хорошие идеи:)
Ура!
Андрей
PS: Если вы хотите попробовать это, имя будет e-chess960.com