Связь между сеансами пользователей HTTP на одном сервере - php ждет обновления поля mysql?

У меня есть совместный веб-сайт, на котором мне нужны разные сеансы от разных пользователей для общения друг с другом (все сеансы запускают php-скрипты на одном сервере). Я думал об обновлении поля «статус» в базе данных mysql и о том, чтобы другие сеансы от других пользователей проверяли это поле каждую секунду (используя php).

Есть ли потенциальная проблема с использованием такого подхода (кэширование базы данных и т.д.). Есть ли лучшее решение? благодарю вас


person user1097111    schedule 08.10.2013    source источник
comment
Возможно, вы не можете ожидать, что кто-то ответит, когда ваш вопрос очень расплывчатый.   -  person WebNovice    schedule 09.10.2013


Ответы (1)


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

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

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

  • Пользователь оставляет сообщение на сервере,
  • Сервер сохраняет сообщение
  • передает его в следующий раз, когда регистрируется вызов ajax получателя.
person Loopo    schedule 08.10.2013