Какие технологии используются на кажущемся «живом» управляемом данными веб-сайте? - PullRequest
1 голос
/ 22 марта 2012

Возможно, заголовок можно перефразировать немного лучше, но в основном мне интересно, как в Facebook реализован «живой» интерфейс в отношении новых уведомлений / сообщений и т. Д. Я знаю, что сложность такой социальной сети слишком велика.многое обсудить в этом небольшом SO-потоке, но если у кого-то есть представление о технологиях, используемых для почти немедленного уведомления своих пользователей о новых записях (я полагаю, записи БД), то мне было бы интересно услышать это.1001 *

Если бы я догадался, я бы сказал, что в клиентском коде есть таймеры, которые периодически проверяют базу данных через AJAX и затем реагируют соответствующим образом.Это правильно?

Ответы [ 2 ]

2 голосов
/ 22 марта 2012

Это через Комету и длительный опрос через node.js или аналогичные веб-серверы, не основанные на потоках.

Если бы я догадался, я бы сказал, что в клиентском коде есть таймеры, которые периодически проверяют базу данных через AJAX, а затем реагируют соответствующим образом. Это правильно?

Вы частично правы. Клиент открывает соединение, а сервер отвечает только тогда, когда ему есть что вернуть клиенту.

1 голос
/ 22 марта 2012

Я думаю, что они пытаются использовать HTML5 WebSockets, но в качестве запасного варианта они используют Comet, AJAX, Long pooling с хорошим backend.

...