Во-первых, я думаю, вам нужно оценить разницу между Websockets и Long Polling.
Websockets создает соединение и сохраняет его открытым до тех пор, пока браузер не завершит сеанс с помощью некоторого JavaScript или перехода пользователя изстр.Это даст вам желаемую природу того, что вы запрашиваете.Изучив пример чата в загрузке Play, вы увидите, как обрабатывается все приложение чата с помощью веб-сокетов.В дополнение к ответу Пере о безгражданстве Плей.Создатели Play предположили, что одно соединение Websocket, независимо от того, как долго оно открыто и сколько запросов отправляется назад и далее, считается одной транзакцией.Следовательно, сохранение в базе данных между каждым запросом Websocket не требуется (опять же, вы можете видеть, что в примере чата ничего не сохраняется).Используя этот метод, можно ожидать, что вы сохраните детали, когда Websocket будет окончательно закрыт, или все Websockets, в зависимости от вашего варианта использования.
Длинный опрос, с другой стороны, открывает соединение с сервером,и сервер просто ждет, пока что-то будет отправлено обратно клиенту.Если вам нужно отправить какие-либо данные на сервер, вы бы сделали это как отдельный AJAX-запрос, чтобы вы могли эффективно открыть два запроса одновременно.Вы не обязательно знаете, когда пользователь выходит из системы, если только вы не отправите запрос, когда он покидает страницу, чтобы сервер знал, что он ушел, но это не всегда успешно.Длинный опрос может работать, но это не такое удобное решение, как Websockets, но, как вы говорите, это пока не получило широкого распространения.
Я бы предложил изучить пример чата (так как он имеет длинный опроси версия Websockets).Это будет наиболее эффективный способ начать работу с вашими требованиями.
Что касается вашего окончательного запроса о том, как уведомить другого игрока.В Long Polling вы просто отвечали бы на приостановленный запрос с помощью некоторого JSON.С помощью веб-сокетов вы отправляете событие обратно клиенту.Опять же, оба подхода могут быть довольно четко определены на примере чата.
Я также написал сообщение в блоге на веб-сокетах, которое может помочь вам немного лучше понять этот процесс.