Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Push notification или оптимизированная проверка новых сообщений (https://javascript.ru/forum/server/51772-push-notification-ili-optimizirovannaya-proverka-novykh-soobshhenijj.html)

zhurchik 18.11.2014 23:46

Push notification или оптимизированная проверка новых сообщений
 
Приветствую всех.
Я реализовал чат на сокетах, все работает как подобает, но хочется заранее оптимизировать сией процесс.
На данный момент, скрипт работает след. образом:
Пользователь входит в чат, браузер отправляет запрос через сокеты (HTML5) и запрос улетает на сервер и обрабатывается в цикле, каждая итерация - обращение в БД (цикл засыпает на пол секунды), то-есть, если клиент будет находится в чате 10 минут, то это, грубо говоря, 1200 обращений в БД.
Как можно оптимизировать процесс?
У меня следующее соображение:
Создать отдельный файл и при каждой записи в БД записывать в этот файл ID через функцию file_put_contents() и уже проверять о поступивших данных не в БД, а в файле, и если эти данные новые, то уже доставать их из БД. Но какие могут крыться подводные камни при таком подходе? И вообще правильно ли так делать или же это совсем уж криво? Может быть имеются другие варианты решение проблемы? Я впервые столкнулся с подобной задачей.

bes 19.11.2014 23:15

Цитата:

Сообщение от zhurchik
Пользователь входит в чат, браузер отправляет запрос через сокеты (HTML5) и запрос улетает на сервер и обрабатывается в цикле,

обрабатывается в цикле это как: приходит и с его данными в цикле что-то происходит?

Цитата:

Сообщение от zhurchik
обращение в БД (цикл засыпает на пол секунды)

от простейшего запроса в базу типа "получить значение поля даты последнего изменения базы" такого быть не должно


Часовой пояс GMT +3, время: 20:40.