Какова концепция (передача данных) в живом чате Facebook? - PullRequest
1 голос
/ 04 января 2011

Я недавно присоединился к Facebook (знаю, что опоздал) и проснулся вчера вечером с удивлением. Похоже, модуль живого чата "ищет" новое ответное сообщение каждую секунду или около того. Что слишком быстро IMO. Я понятия не имею, как им удается не получить их серверы живы.

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

Я еще не запускал Firebug, чтобы увидеть XHR запросов, которые посылают существа.

Я полагаю, что если живой чат удерживается в Iframe и XHR отправляют на другой HTTP-сервер, он будет оставаться "основным" сервер "кулер". Кроме того, использование метода Iframe позволит избежать отправки слишком большой полосы пропускания из-за файлов cookie, используемых «основным» сайт.

Мне не нужен ответ типа «У них есть сотни серверов, получающих миллионы запросов в минуту, они могут выжить». Я уверен, что мне просто не хватает их магии вуду. : Р

В любом случае, есть идеи у кого-нибудь?

Ответы [ 4 ]

1 голос
/ 05 января 2011

Информация доступна здесь: http://www.facebook.com/note.php?note_id=14218138919

И эти слайды объясняют почти все: http://www.slideshare.net/dariosalvelli/eugene-letuchy-erlangat-facebook

0 голосов
/ 04 января 2011

Возможно, вы захотите выполнить поиск в Google для xmpp

0 голосов
/ 04 января 2011

В последний раз, когда я смотрел на него с помощью firebug, который, по общему признанию, был много месяцев назад, казалось, что они использовали кометный метод. XHR открывался до минуты, который либо возвращал с новыми данными, либо в конце минуты ничего.

0 голосов
/ 04 января 2011

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

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