Задать вопрос
Yourmind
@Yourmind
пишу говнокод в перерывах между едой и сериалами

Сервер на python3?

Хочу написать сетевую игру шашки. Клиенты находятся на мобильных устройствах и шлют на сервер json-объект как представление нового построения поля игры с фигурами. Сервер хочу писать на python3. Думал использовать библиотеку request но не понял как там слушать то что присылает нам клиент. Но все мои копания в интернете привели меня к тому что request это все дела клиентские, а на сервере все придется делать через сокет? типа:

import socket
sock = socket.socket()
sock.bind(('', 9090))
sock.listen(1)
conn, addr = sock.accept()
while True:
    data = conn.recv(1024)
conn.close()


Никакого более высокоуровнего варианта общения сервера с клиентом нет?
  • Вопрос задан
  • 355 просмотров
Подписаться 3 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
dollar
@dollar
Делай добро и бросай его в воду.
Высокоуровневое решение - это сделать объект просто "сетевым", чтобы все его свойства тупо сихронизировались каждый фрейм. При этом нагрузка на сеть увеличивается, и у вас напрочь отбирают возможность оптимизации. Вам надо такое?

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

Может быть, вы хотите передавать новые координаты фишки в двух случаях: 1) при изменении координат, но 1 раз в секунду 2) сразу же после того, как фишка поставлена. На втором клиенте движение сглаживается с учетом того, что траектория не особо важна. Это будет ваша оптимизация, и только ваша. Поэтому сокеты.
Ответ написан
Комментировать
tsarevfs
@tsarevfs
C++ developer
JSON API для получения данных и WebSocket для уведомлений о действиях других людей. Простые сокеты действительно потребуют слишком много работы для реализации надежного взаимодействия.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы