http?
У тебя есть реалтайм данные? ) котировки?
только чаты в этом плане) но в целом ведь сокеты должны дать более приятное взаимодействие за счет скорости, только смущает отсутствие нормального горизонтального масштабирования. думаете нет смысла?
Нет. При хорошем интернете http скорости хватит, а для UX достаточно будет "ощущения" скорости. При плохом интернете ws всё также надо будет переподключать
А в чем прирост скорости по сравнению с обычным http запросом?
Экономия на установке соединения)
keep alive?
Такое же масштабирование как в http - поднял несколько серверов
А чем это будет лучше sse или ws?
Нет http заголовок Можно слать бинарные данные
Ws балансируется хуже
Не совсем то же. в http запрос-ответ, и можно один запрос в один сервер, второй в другой, а запросы обычно не связаны друг с другом. С WS чаще нужно общее состояние и sticky sessions
А в http бинарники не послать?
Неправильно выразился, имел в виду микросервисы, не очень удобно. Плюс по архитектуре мне не очень нравятся возможности
Тоже справедливо
В http у тебя сессия - такое же общее состояние
Обычно не шлют
Шлют. Картинки ж не в base64 приходят)
Я не про картинки а про данные
Но их тоже шлют. И идут они бинарно, а не текстом. Потому что http не имеет ограничений на тело. Тот же grpc шлёт бинарники, на сколько я помню
Непонятно, зачем кому то понадобились данные в бинарном виде на клиенте 🤔
Экономия на трафике, на сериализации, "обфускация" :D
ещё есть всякие protobuf, thrift
Сэкономить на трафике можно и обычным gzip
Это другой аспект
если есть ожидаемые данные, то бинарные данные в выигрыше, только схему данных на фронте и беке нужно иметь)
тоесть ты можешь условные свойства сжать до каких то обозначений и их значения ещё сжать
А gzip на что?
камон я тебе обяснил
Давайте сначала, что вы под бинарными понимаете?
я ничего не понимаю в етом, я просто пишу тебе абстрактно thrift например шлешь данные структурами, которые парсятся по схеме на беке/фронте благодаря этому можешь отбросить в постдате те же самые property в json потому что у тебя есть схема, и по ней можешь восстановить отброшеннве проперти хз, мб это сериализация называется
очень абстрактно))
Отправка последовательностью байт в некоторой схеме, которые понимает получатель. JSON, XML и тп - текстовый формат. Это отправка текста в некоторой текстовой кодировке (UTF-8 и тп). Текста в некотором формате, который умеет потом десериализовываться в данные. И он сначала будет парситься, как текст, а не как просто последовательность чисел. Простые отличия, число "2000000000" текстом - это 10 байт (на 10 символов), а бинарно это число на 4 байта. Аналогично, в тексте тратится объём на имена свойств, на синтаксис, на всё то, что делает данные читаемыми для человека. В более сложных случаях бинарный формат лишён ограничений, которые дают популярные текстовые. Например, может позволить иметь явные ссылки, или типы данных, которых нет в формате сериализации. Конечно, это уже зависит от формата конкретного. Но текстовые используют лишь несколько конкретных - json, xml.
Спасибо, но как это в контексте браузера? Предлагаете thrift прямо клиенту кидать?
Для использования этого сайта, пожалуйста установите Apache Thrift Deserializer for Chrome
Я не знаком с thrift
ору, он не про него, а в целом да, так и кидать просто добавь схемы и свой код который будет обрабатывать данные
Имеет, но такие вещи как кеширование придётся самому реализовывать при необходимости
Перечитайте тред
Grpc на каждое сообщение новый запрос шлёт?
Я не знаю, как он в вебе работает( У них недавно ещё вроде обновление было
Обсуждают сегодня