TGViewer
Burmistrov - It и около Burmistrov - It и около @crazyelephant_note · 1.1K subscribers
Post #828 628
Server-Sent Events (SSE)

Бывало у вас так: на проекте есть задача в реальном времени, но техлид или инфраструктура или ИБ накладывают табу на WebSocket?
Со мной такое случилось!
Есть задача сделать sorry, NDA, а использовать вебсокеты — нельзя. Долго думал, как обойтись, и решение нашлось в виде SSE (Server-Sent Events).

Делюсь забытой технологией древних.

Что это такое?
SSE — это стандарт, позволяющий серверу автоматически «проталкивать» (push) данные клиенту (например, браузеру) через одно постоянное HTTP-соединение. Клиент просто подписывается на событие и ждет обновлений.

Как выглядит на практике?
Сервер отправляет данные в специальном текстовом формате, а клиент (JavaScript) ловит их через объект EventSource. Это очень просто реализовать.

❓SSE vs WebSocket: В чем разница?
Частая ошибка — ставить их в один ряд. Они решают разные задачи!

Server-Sent Events (SSE) — это как радио. Сервер «вещает» данные, а клиент их «ловит».
▫️Связь односторонняя (только Server → Client)
▫️Работает поверх обычного HTTP(S
▫️Супер-фича: если соединение падает, клиент автоматически переподключается
▫️Отправляет только текстовые данные (чаще всего JSON).

WebSocket — это как телефонный звонок. Устанавливается полноценное двустороннее соединение (Server ⇄ Client).
▫️Свой специальный протокол
▫️Можно пересылать что угодно: текст, бинарные данные, файлы
▫️За эту мощь и функциональность приходится платить: переподключение и обработку ошибок нужно писать вручную
▫️Реализация сложнее

😎Когда использовать SSE?
SSE идеален для сценариев, где данные идут в основном в одну сторону — от сервера к клиенту.

Примеры:
〰️Лента уведомлений (новое сообщение, комментарий, лайк)
〰️Онлайн-датчики и мониторинг (курс акций, температура процессора)
〰️Ленты новостей / Таймлайны в реальном времени
〰️Статус длительной задачи (прогресс загрузки файла)
〰️Dashboard-ы, которые должны обновляться сами

😃Когда выбрать WebSocket?
WebSocket — ваш выбор, когда нужна полноценная двусторонняя связь в реальном времени.

Примеры:
〰️Чаты и мессенджеры (нужно не только получать, но и отправлять сообщения мгновенно)
〰️Онлайн-игры
〰️Совместное редактирование документов
〰️Сервисы видеозвонков

Итого
Не тянем за собой тяжелый WebSocket, если задача решается легким SSE.
Правильный выбор технологии:
▫️Экономит ресурсы на разработку и поддержку.
▫️Повышает надежность (SSE проще и отказоустойчивее за счет HTTP).
▫️Делает архитектуру подходящей под задачу.

Байт на комментарии: В каком из проектов вашей компании можно применить SSE прямо сейчас?
  • 🔥 9
  • ❤‍🔥 1
  • 👍 1
More from @crazyelephant_note
  1. Oct 2, 2026Post #1126
  2. Sep 30, 2026Post #1125
  3. Sep 29, 2026В прошлом году на стачке я освоил навык настройки линукс сервера, смотрите видео. В этом г…
  4. Sep 27, 2026А 5g вообще было? Мне кажется вместо LTE я видел надпись 5g, а сейчас это подпись к назван…
  5. Sep 25, 2026Самые важные вещи в мире сначала кажутся непопулярными, странными, нишевыми, даже скучными…
  6. Sep 21, 2026Каждый понедельник я буду вкидывать умную мысль. На выходных много общался с людьми, все И…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →