Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 15.04.2015, 00:44
Интересующийся
Отправить личное сообщение для SokDobriy Посмотреть профиль Найти все сообщения от SokDobriy
 
Регистрация: 16.11.2014
Сообщений: 29

Так ребята. Немного пообщавшись на канале socket.io ситуация немного прояснилась. Все пользователи должны быть постоянно подключены к серверу.
Я не понимаю. То есть и whatsupp и viber так работают? То есть они всё время шлют пакеты на сервер даже если ничего не происходит?
Ответить с цитированием
  #12 (permalink)  
Старый 15.04.2015, 09:11
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

SokDobriy,
Цитата:
То есть и whatsupp и viber так работают? То есть они всё время шлют пакеты на сервер даже если ничего не происходит?
Хз вообще, у них могут быть разные протоколы. Вики гласит
Цитата:
WhatsApp использует модифицированный протокол Extensible Messaging and Presence Protocol (XMPP, ранее известный как Jabber)
По ссылке на XMPP в описании слабых сторон говорится:
Цитата:
Избыточность передаваемой информации: Как правило, более 70 % межсерверного трафика XMPP составляют сообщения о присутствии[14], около 60 % которых являются излишними[15]. XMPP на данный момент создаёт избыточный трафик при доставке сообщений о присутствии (то есть «статус-сообщений») нескольким пользователям.
Ответить с цитированием
  #13 (permalink)  
Старый 15.04.2015, 10:49
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
Я не понимаю. То есть и whatsupp и viber так работают? То есть они всё время шлют пакеты на сервер даже если ничего не происходит?
https://learn.javascript.ru/websockets#ping-pong

Цитата:
Все пользователи должны быть постоянно подключены к серверу.
Ну да. Что не так?

Цитата:
Перелопачивать, что бы найти адресата. Один пользователь написал сообщение, оно пришло на сервер. Теперь нужно что бы сервер направил его адресату. Он полезет в базу искать пользователя получателя.
Зачем? Пул коннектов держится в приложении, а не в базе, потому что, очевидно, с прерыванием приложения эти данные должны исчезнуть. Инкапсуляция и все дела. В базе хранятся данные профиля.
Ответить с цитированием
  #14 (permalink)  
Старый 15.04.2015, 13:58
Интересующийся
Отправить личное сообщение для SokDobriy Посмотреть профиль Найти все сообщения от SokDobriy
 
Регистрация: 16.11.2014
Сообщений: 29

Erolast,
Я просто представлял себе это изначально по другому. Отправитель шлет на сервер (тут всё понятно), сервер обрабатывает и шлет получателю. А получатель сидит себе спокойно и ничего никуда не шлет, пока не прийдёт сообщение. Я как раз и не понимал при таком раскладе, куда будет сервер слать сообщение получателю.
Теперь то всё, конечно, понятно. Но это какой-то омг.
Ответить с цитированием
  #15 (permalink)  
Старый 16.04.2015, 09:06
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
Я просто представлял себе это изначально по другому. Отправитель шлет на сервер (тут всё понятно), сервер обрабатывает и шлет получателю. А получатель сидит себе спокойно и ничего никуда не шлет, пока не прийдёт сообщение.
В смысле, без поддержки постоянного подключения? Ну должно быть можно и так - на телефоне поднимается сервер, мастер-сервер на него пересылает сообщения. Но зачем? Это ж оверхед от постоянных открытий-закрытий соединений выйдет.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
понять на сервере ли запущено приложение Sveta Общие вопросы Javascript 2 05.08.2013 15:54
github. как правильно выложить приложение dmitry111 Оффтопик 120 20.01.2013 23:52
Проверить запущено ли приложение Wladimir Общие вопросы Javascript 1 23.08.2011 15:00