LINUX.ORG.RU
ФорумTalks

Почему Yandex-suggest работает через JSON, а не через WebSocket ?

 ,


0

2

Яндекс-suggest - это когда букву добавляешь, а он внизу дорисовывает варианты запросов.

Почему Яндекс — suggest работает через JSON, а не через websocket? Вебсокет сейчас поддерживается в 99% случаев, в крайнем случае при отсутствии поддержки можно юзать JSON. Через вебсокет данных шло бы меньше в разы, особенно если заюзать бинарный протокол. А они на каждое нажатие клавиши гоняют туда-сюда килобайты JSON-а. Почему не WS, если он доступен клиенту?

Для кеширования на клиенте.

Почему yandex-maps перестало требовать flash для просмотра панорам только пару недель тому назад?

shahid ★★★★★
()
Последнее исправление: shahid (всего исправлений: 1)

Почему Яндекс — suggest работает через JSON, а не через websocket?

В смысле, через XMLHttpRequest? Может потому, что XHR лучше горизонтально масштабируется и не требует постоянно открытого соединения? Или чтобы поддерживать единообразие всех сервисов? Или потому, что XHR REST легче реализуется на серверной стороне?

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

Яндекс не та контора, которая будет гнаться за простотой... Постоянно открытое соединение браузер всё равно держит, даже несколько.

kiverattes ★☆
() автор топика

гоняют туда-сюда килобайты
килобайты

Замени уже свой диалап на что-то современное.

drull ★☆☆☆
()

Почему Яндекс — suggest работает через JSON, а не через websocket?

Зачем? Запросил, получил ответ, закрыл/оставил в пуле, зачем тут вебсокет.

backburner
()
Ответ на: комментарий от Xellos

Людей за меньшее 4.2 банили пожизненно по ойпи. Крокодил зеленый и вдоль, и поперек, и даже наискосок, а длинный он только вдоль. Из этого следует, что он более зеленый, чем длинный.

der_looser ★★
()

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

Shadow ★★★★★
()
Ответ на: комментарий от kiverattes

Зачем ты считаешь чужие деньги? Если бы яндексу було выгодно запилить вебсокеты - запилили бы.

drull ★☆☆☆
()

Через вебсокет данных шло бы меньше в разы, особенно если заюзать бинарный протокол

Конкретный пример выкати, посмеемся, посмотрим на РАЗЫ.

Deleted
()
Ответ на: комментарий от kiverattes

Яндекс не та контора, которая будет гнаться за простотой

Правильная простота - залог эффективности решения. Пример - HTTP.

Постоянно открытое соединение браузер всё равно держит

И это соединение он шарит на множество клиентов (вкладок) с их скриптами, фреймами, картинками, обновлялками лент и т.п. И кроме того, система запрос-ответ замечательно автоматически параллелится - берем запрос, присобачиваем ему листенер, говорим «выполнись» - он выполняется, и когла выполнится - автоматом выстрелит соответствующий листенер.

Если используется вебсокет - нужно озабочиваться мультиплексированием и демультиплексированием и костылить очередной свой протокол над вебсокетом. Ну и, пардон, нахрена?

no-dashi ★★★★★
()
Ответ на: комментарий от drull

С чего ты это взял? Официальный представитель?

kiverattes ★☆
() автор топика
Ответ на: комментарий от Deleted

Что останавливает так посмеяться, без примера? Пример сам позырь по F12 на ya.ru когда пишешь буковку. На каждую буковку у тебя HTTP заголовки + JSON с кучей кала.

kiverattes ★☆
() автор топика
Последнее исправление: kiverattes (всего исправлений: 1)
Ответ на: комментарий от kiverattes

Ок, тогда ещё наброшу:
- Кеширование ответов на стороне сервера.
- Веб-сокеты плоховато работают через голый HTTP (который так любит янdeX), плохо пробрасываются через CDN.
- Инерция сабжевой конторки раньше вызывала разрыв мозга, а сегодня просто пассивное сожаление.

shahid ★★★★★
()
Ответ на: комментарий от shahid

Если кратко, вброс не взлетел.

- чё за бред не в тему
- вебсокеты ортогональны ХТТП. Что такой «голый хттп»?
- какая инерция, они же вон какие красивые новые карты запилили с canvas и WebGL.

kiverattes ★☆
() автор топика
Последнее исправление: kiverattes (всего исправлений: 3)
Ответ на: комментарий от kiverattes

чё за бред не в тему

Ты никогда не слышал про кеширование http-ответов силами nginx? Это плохо.

вебсокеты вообще ортогональны хттп

В этом и проблема.

Что такой «голый хттп»?

Значит, без обертки в виде SSL, которая защищает трафик от «оптимизации» на промежуточных узлах.

какая инерция, они же вон какие красивые новые карты запилили с canvas и WebGL

Лет на пять опоздали немного. Я недавно думал, что флеш там будет ещё лет десять-пятнадцать.

shahid ★★★★★
()

На самом деле, интересный вопрос. Но Google тоже так делает. А в почте Яндекс кстати их использует, даже в старых браузерах через Flash.

nikita-b
()
Последнее исправление: nikita-b (всего исправлений: 2)
Ответ на: комментарий от shahid

А в чём проблема перехода на личности? Ты разве не личность? Или не твоя личность написала этот бред?

kiverattes ★☆
() автор топика
Ответ на: комментарий от kiverattes

Ты не уходи от обсуждения своей личности.

Незаметная попытка соскочить с темы терпит неудачу. Как будешь оправдываться?

shahid ★★★★★
()
Ответ на: комментарий от kiverattes

Зачем мне оправдываться

Ты же до этого оправдывал свою истерику, что все мы личности и всё такое. Давай продолжай кукарекать с безопасного расстояния.

Но описать мои технические ошибки всё никак у тебя не получается.

shahid ★★★★★
()
Ответ на: комментарий от shahid

Люди всегда делают то, что делали до этого? Странная логика.

kiverattes ★☆
() автор топика
Ответ на: комментарий от shahid

Зачем свой бред ты называешь техническими ошибками? Какое отношение бред имеет к технике? )

kiverattes ★☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.