Хорошая идея использовать базу данных веб-сайта для игрового сервера?

Вот что я делаю. У меня будет онлайн-игра, представляющая собой настоящее исполняемое приложение, которое запускаются клиентами. Клиенты подключаются к моему игровому серверу. У них будет статистика, достижения и возможность покупать разные вещи, для которых я буду использовать сервис PayPal IPN.

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

Пользователи должны иметь доступ к своей статистике с веб-сайта или из самой игры.

Будет ли хорошей идеей использовать базу данных MySQL, поставляемую с веб-сайтом, для всего. В том, что игровой сервер будет получать и устанавливать свойства через php или что-то в этом роде?

В противном случае, что может быть лучшим решением? Есть ли способ для моего веб-сайта использовать базу данных, которая находится на игровом сервере, если да, то было бы это хорошей идеей?

Как обычно решаются такого рода проблемы?

Спасибо


person jmasterx    schedule 04.11.2011    source источник
comment
MySQL популярен, но ни в коем случае не является единственным или даже лучшим вариантом.   -  person    schedule 04.11.2011


Ответы (3)


Где вы размещаете базу данных, на самом деле не имеет значения. Если он у вас уже есть и он может выдержать нагрузку, используйте его. Но для безопасности и общей организации вам следует создать отдельную базу данных и пользователя в MySQL для информации о счете вашей игры. Пользователь должен иметь доступ только к базе данных игровых данных. Таким образом, ваши другие данные в базе данных защищены от вашего веб-интерфейса до игровых данных в случае уязвимости PHP или SQL.

person stands2reason    schedule 04.11.2011

MySQL - это определенно путь. У меня есть текущая настройка в папке за пределами общедоступного html, называемого пользователями, когда пользователь регистрирует подпапку внутри пользователей, создается вместе с записью mysql. Я использую MySQL для имени пользователя/пароля/DOB/и т. д. и пользовательская папка для хранения фотографий, достижений в формате XML и комментариев.

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

person Techboy6601    schedule 04.11.2011

MySQL — популярный выбор для обеспечения постоянства. Загрузите профиль при входе в систему и кэшируйте данные на клиенте. Затем запишите обновления обратно в конце сеанса. Это одна из вещей, для которых был создан MySQL/PHP. Он дешевый, простой, хорошо работает и масштабируется.

person Sinthia V    schedule 04.11.2011