Архитектура системы для постоянной браузерной игры: может ли сервер WebSockets быть отдельным? - PullRequest
0 голосов
/ 08 сентября 2018

Я давно написал текстовую онлайновую RPG на C для IBM S / 390. Я хочу вернуть его к жизни в Интернете в 3D. Я просто хочу визуализировать несколько статических персонажей с их оборудованием на космическом корабле, на самом деле нет никаких движений, кроме нескольких анимаций на рельсах (например, поза). Фоновые сцены и персонажи могут меняться, отсюда и необходимость в Ajax. Ниже моя текущая архитектура:

Сервер A: HTTPS-сервер

  • Обслуживает HTML / CSS (Apache 2) и обрабатывает аутентификацию.
  • База данных аутентификации пользователя (MariaDB)
  • Обслуживает игровые ресурсы (модели, текстуры, музыку и т. Д.) Через Ajax.

Сервер B: игровой сервер

  • Управляет постоянным игровым состоянием и игровым циклом (число тиков в секунду) для всех пользователей. (здесь вступает в действие устаревший код C)
  • База данных игр (MariaDB)
  • Связь с клиентом JavaScript через WebSockets.

Сеть доставки контента

  • Служит клиенту JavaScript.

У меня такие вопросы: как безопасно разделить аутентификацию и саму игру на разные физические серверы? Это даже необходимо / рекомендуется? Я мог бы предположить, что мне нужно создать временное печенье или что-то в этом роде, но это ли надежный метод? О каких подводных камнях мне нужно знать?

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

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