nvxiii

+3
с 01.08.2026
3 подписчика
0 подписок

Услышал про проксирование трафика! Спасибо! Защитил мастер-сервер: HTTPS + nginx + Gunicorn только на 127.0.0.1.

Я понял, речь про HTTP REST была об Heartbeat, а не о клиентском опросе серверов. Да, хоть Heartbeat и не тикает, а раз в N секунд или по факту захода/выхода игрока, согласен, я тоже считаю, что это не самый лучший способ. Почитаю про бинарный протокол.

IP-адреса публичных серверов — это открытые и общедоступные данные. Не понимаю опасений по поводу них.

Игроку нужно пропинговать сервера, чтобы он видел и показал через UI настоящую задержку от НЕГО самого до ИГРОВОГО СЕРВЕРА (никто кроме клиента, ни прокси, ни мастер-сервер не может показать реальную задержку от конкретного игрока к конкретному серверу).

Клиент делает легкий UDP Ping на игровой сервер, а игровой сервер отвечает Pong. Игрок самостоятельно делает замер и вычисляет пинг. Выше, "Как это работает на клиенте (Unreal Engine):" я приложил код. То-есть HTTP REST тут никак не учавствует.

Клиент пингует игровые сервера через Socket, разве socket это не прокси?

Сам мастер-сервер также работает отдельно от игровых серверов, поэтому обработка списка серверов никак не влияет на игровой процесс.

Кажется, тут есть небольшое недопонимание, поэтому отвечу по пунктам.

"DDOS-ит сама себя"
Нет. Клиент отправляет небольшие UDP-запросы только тем серверам, которые уже получил от мастер-сервера. Это обычная проверка пинга и доступности, а не какая-то большая нагрузка.

"Сливает IP всех серверов"
Чтобы подключиться к игровому серверу, клиент всё равно должен знать его IP. Без этого подключение просто невозможно. Здесь ничего необычного нет.

"HTTP-оверхед"
По HTTP клиент получает только список серверов. Дальше всё общение с игровыми серверами идёт по UDP, поэтому лишнего HTTP-трафика нет.

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