С PHP и AJAX, могут ли два клиента обмениваться данными без MySQL? - PullRequest
0 голосов
/ 20 марта 2010

Давайте предположим, что я занимаюсь разработкой AJAX, PHP шахматной игры. Во время игры одно движение игрока будет сообщено другому, но мы не сохраняем эту информацию. Обычно мы хранили в MySQL каждый раз, когда игрок делает движение, и показываем позицию обновления другому игроку. Я хочу максимально снизить нагрузку на MySQL, и сервер не заинтересован в перемещениях между двумя игроками. Сервер будет сохранять только конечный результат, например, кто победит. Так что мне делать?

1 Ответ

7 голосов
/ 20 марта 2010

Я предполагаю, что вам понадобится какое-то постоянное хранилище для сохранения ходов, поэтому альтернативой будет memcache или хранение данных в файлах. Первый работает молниеносно, но требует настройки на сервере. Последний не имеет реального преимущества перед использованием базы данных IMO.

Любая форма хранения, которая осуществляется только на компьютерах пользователей (например, хранение информации в файлах cookie или в каком-либо другом постоянном хранилище, см., Например, здесь или здесь ) было бы слишком шатко: игровой сеанс был бы разрушен, если бы обоим клиентам пришлось бы перезагружать свои компьютеры, что не исключено.

Без каких-либо достоверных данных о том, что сервер mySQL перегружен таким типом трафика, я бы придерживался базы данных. В противном случае посмотрите на memcache .

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