Лучший способ показать уведомления и сообщения ЖИВЕТ на веб-странице?

Мне интересно действительно хорошим способом сделать мгновенный обмен сообщениями как meebo и Facebook и MySpace, который все имеют, также для уведомлений на странице. Пример на моем сайте теперь, когда пользователь получает новое сообщение электронной почты, фото комментарий, комментарий профиля, запрос на добавление в друзья, некоторые другие вещи, они получат уведомление и ссылку на странице, они находятся на использовании jQuery и Ajax.

Я полагаю в крупном масштабе, что это не лучший способ сделать это, хотя, поскольку мой код jQuery должен будет в основном выполнить Сценарий PHP для запросов mysql таблицы каждые 30 секунд или так для каждого пользователя, у которого есть страница, открытая с этим выполнением сценария. Я хотел бы в конечном счете добавить в своего рода мгновенном обмене сообщениями как Facebook, имеет в панели чата внизу экрана, если я могу узнать эффективный способ сделать его.

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

Если Вы знаете некоторые хорошие решения, объясните, как они работают немного

5
задан marc_s 17 January 2016 в 13:34
поделиться

4 ответа

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

XMPP является

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

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

1
ответ дан 15 December 2019 в 01:02
поделиться

Вы ищете сервер «Comet». Поскольку вы говорите PHP, ваше лучшее решение будет решением SaaS, такое как WebSync по требованию , поскольку PHP имеет проблемы с масштабированием, когда речь идет о большом количестве одновременных соединений. Смотрите также этот вопрос .

2
ответ дан 15 December 2019 в 01:02
поделиться

Не могли бы вы иметь очередь общего сообщения, которую Ajax может запросить? Может быть, его скрипт PHP, который хранит большинство сообщений в Memcached (и, возможно, писать в БД в случае сбоя).

Не уверен, но любопытно услышать другие решения ...

1
ответ дан 15 December 2019 в 01:02
поделиться

Основная проблема заключается в том, что вам необходимо реализовать Comet-сервер (т.е. реализовать Server Push). Стандартные веб-хосты и apache не позволяют сделать это легко. Другим хостинговым решением (кроме Web Sync) является Goldfish Server. В настоящее время бесплатно.

0
ответ дан 15 December 2019 в 01:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: