Задать вопрос
RomanticOS
@RomanticOS
webDeveloper

Кто знает принцип работы системы мгновенных сообщений между пользователями на сайтах знакомств, к примеру 2005 года?

Привет! Ребята, у меня такой вопрос, в наше время для реализации системы сообщений между пользователями рекомендуют Node JS, WebSocket, и что-то подобное, современное. Но Node JS это действительно новая технология, которую сейчас поддерживают далеко не все хостинги. Меня интересует следующее: Как раньше, примерно, 2005-2009 год работали системы сообщений на сайтах знакомств, на какой технологии они базировались? Ведь для реализации обмена сообщений нужно было не просто отправить сообщение, но и постоянно проверять нет ли новых сообщений для пользователя. Если, сейчас использовать ajax запросы с setInterval, к примеру, 3 секунды, то при накоплении большого количества пользователей сервер будет "снесён" (500 пользователей = 500 обращений к серверу через каждые 3 сек.). Или как реализовать проверку новых сообщений по инициативе сервера без Node JS? Заранее спасибо.
  • Вопрос задан
  • 436 просмотров
Подписаться 2 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 5
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
поддерживают далеко не все хостинги


Для начала все эти сайтики знакомств не использовали шаред хостинги и в 2005-ом году.

На самом деле достаточно посмотреть на вконтактик. Они как в 200x использовали long polling так и сегодня. Еще есть просто polling но это выходит по нагрузкам на сервер тяжелова-то.
Ответ написан
Комментировать
Rou1997
@Rou1997
Long Polling.
Ответ написан
Комментировать
RubaXa
@RubaXa
Кроме Long polling был ещё Flash/rtmp, собственно mamba и многие другие сайты знакомств использовали именно его.

Да и Long polling тоже был особый, это бесконечный iframe. Сервер просто не закрывал соединение и по мере появления новых данных отдавал что-то вроде
<script>printMessage(userId, messageData)</script>
<script>updateUserList(array)</script>


UPD. На самом деле уже тогда при помощи Flash/rtmp и LocalConnection делали master/slave на клиенте, чтобы не грузить сервер соединениями от каждой вкладки. Даже сейчас такое редко встретишь.
Ответ написан
Комментировать
MAKAPOH
@MAKAPOH
многостаночник
Про long polling тут уже написали, повторять не буду. Что касается того что использовали вместо node. Например для python есть библиотека twisted которой уже наверно лет 15. Про другие языки не знаю.
Ответ написан
Комментировать
@polyakovyevgeniy
Можно использовать очень хорошую библиотеу SignalR
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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