Серверный P2P Relay и Лобби
BlueStudz использует архитектуру изолированного серверного шлюза. Прямой WebRTC между пирами полностью запрещен в целях защиты персональных данных и предотвращения деанонимизации IP-адресов.
Безопасный мультиплеер через релей
Весь игровой сетевой обмен, синхронизация позиций и голосовой чат маршрутизируются через выделенный микросервис p2p-relay-service. Игроки видят только адрес шлюза, что полностью исключает DDoS-атаки и сканирование портов участников сессии.
Пакеты данных больше 128 КБ автоматически фрагментируются на стороне клиента и собираются в кольцевом буфере релея.
Для игроков в одном регионе задержка маршрутизации внутри кластера минимизирована благодаря распределенным точкам входа.
Создание и поиск лобби
Эквивалент SteamMatchmaking. Создание лобби выполняется HTTP-запросом:
curl -X POST https://api.bluestudz.ru/lobby \
-H "Authorization: Bearer <sessionToken>" \
-H "Content-Type: application/json" \
-d '{"gameId":"uuid","maxPlayers":4,"isPrivate":false}'Реалтайм через WebSocket
Подключение к сокету matchmaking/relay происходит через Socket.IO:
const socket = io("wss://ws.bluestudz.ru/relay", {
auth: { token: gameToken }
});
socket.emit("join_room", { lobbyId });
socket.on("peer_data", (chunk) => handlePacket(chunk));