Советы для уведомлений о сообщениях ajax? - PullRequest
1 голос
/ 16 июля 2011

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

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

Если я делал это в ajax, я думал проверять каждые 3-5 секунд на наличие новых сообщений, и как только появится флаг, прекратите проверять больше.

Мое единственное беспокойство заключается в том, что, если он проверяет каждые 3-5 секунд, вызовет ли это какое-либо отставание или сбой в работе человека при наборе текста? Допустим, они где-то набирают абзац, и я не хочу, чтобы их запись сработала, пока он проверяет эти 3-5-секундные интервалы.

Один из моих друзей по кодированию упомянул, что есть метод с Ping (?) Или что-то в этом роде. Где человек всегда подключен к серверу и когда есть изменение, он уведомляет пользователя. Я совершенно не уверен, как это работает.

Кто-нибудь знает, как это делает Facebook? ха-ха.

Спасибо!

Ответы [ 2 ]

1 голос
/ 16 июля 2011

Один из моих друзей-программистов упомянул, что есть метод с Ping (?) Или что-то в этом роде

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

Чтобы использовать это, вы можете, например, использовать:

Кто-нибудь знает, как это делает Facebook?ха-ха.

Для chat они используют Erlang.У них также есть торнадо с открытым исходным кодом (см. Ссылку выше), который они требовали от Friendfeed , которые они приобрели в прошлом.Facebook - это PHP-магазин, но они решили не использовать PHP для этого, потому что PHP пока не может сделать это эффективно.В любом случае, они используют один из приведенных выше способов транспорта.

1 голос
/ 16 июля 2011

Если вы хорошо выполнили AJAX, он не должен отставать / сбиваться при наборе текста.Что-то вроде 3-5s хорошо, так как достаточно быстрое, но не замедляет работу сервера / браузера.

Он имел в виду «push»?При нажатии сообщения передаются клиенту в режиме реального времени, клиент не спрашивает, есть ли новые сообщения.Скорее всего, это метод, который использует Facebook.

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