нас есть клиент и сервер на вебсокетах, у нас есть гарантия что сообщения придут в том же порядке, что и запросы? Например клиент отправляет one two, сервер получает one и в ответ отправляет ones, получает two и в ответ отправляет twos. Не будет же ситуации когда клиет получит сначала twos, а потом ones?
вебсокеты это не совсем нодежс. Это надстройка над хттп. И по идее ответ придет в том порядке в каком его отправит сервер. Если на обработку one требуется минута (сложный запрос в базу данных, потом обработка на десяти микросервисах) а на обработку two секунда - то как бы не очень логично держать twos до отправки ones, если этого не требует бизнеслогика. В рамках js стоит взгянуть на то как работает event loop. Можно устроить так что отправка twos будет заблокирована до отправки ones со стороны сервера. Или же не обрабатывать twos до ones на стороне клиента
Может не в тему, но в тех же rpc протоколах поверх вебсокетов каждому сообщению "запрос" прибавляется айдишник, по которому можно сопоставмть ответ, который прийдет с тем же айди
вебсокеты постороены поверх tcp, а tcp гарантирует порядок Кратко говоря не будет такой ситуации
Доставку, а не порядок? Или я путаю?
Вебсокеты - надстройка над хттп. Ты хочешь сказать что у тебя ответы на геты приходят исключительно в порядке отправки?
а хттп надстройка над tcp
Об том и речь
вот и я так думаю. Но всеравно, довольно сложная задача запросить данные и сокетах и подписаться на обновления этих данных.
"Вы не понимаете, это другое")
Message fragments! А не отдельные сообщения
Да тут не поспоришь но здесь не будет фрагментов меседжа а два разных меседжа
кейс редкий, но вполне возможный
Обсуждают сегодня