Есть ли способ постоянно обновлять данные на стороне сервера, когда нет соединения с клиентом? - PullRequest
0 голосов
/ 14 июля 2020

Я создаю многопользовательскую браузерную игру в реальном времени, в которой вы перемещаете отряды по всему миру и можете сражаться с другими отрядами поблизости. Я использую фреймворк django, и я буду использовать django -каналы, которые используют веб-сокеты для уведомлений в реальном времени.

В базе данных каждый отряд имеет свою позицию по широте и долготе здоровья, моральности.

Проблема в том, что, когда вы перемещаете отряд, и пользователь закрывает браузер, как я могу продолжать обновлять позицию этого отряда, чтобы начать взаимодействие с возможными ближайшими отрядами.

Например, я хочу переехать мой отряд от A до C, это займет 6 часов, поэтому я отключаюсь (закрываю браузер) через 30 минут. НО через 4 часа мой отряд встречает вражеский отряд в B, и бой должен начать обновлять мои атрибуты, а также отряд врага (здоровье, мораль, отряд остановлен). Как я могу продолжать обновлять свою позицию отряда, пока нет пользователя, который отправляет данные (POST, GET, WebSocket) и инициирует изменение в базе данных.

Я пришел с длинным опросом: Выполнение запроса каждые x раз (нет необходимости делать запросы очень часто, поскольку движение происходит медленно). Но для этого нужно ли мне использовать отдельный «сервер опроса» или процесс?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...