WebSocket
Протокол для двунаправленной связи в реальном времени между клиентом и сервером.
Что это
WebSocket — постоянное соединение клиент-сервер для real-time обмена данными. В отличие от HTTP, сервер может отправлять данные клиенту без запроса.
WebSocket используется для чатов, уведомлений, live-дашбордов, онлайн-игр, аукционов в реальном времени и совместного редактирования.
Ключевые возможности
Двунаправленность
Сервер отправляет данные клиенту без запроса — мгновенные обновления.
Низкий overhead
После handshake — минимальные заголовки. В 10 раз меньше трафика чем HTTP polling.
Persistent connection
Одно соединение на всю сессию — нет задержки на установку TCP-соединения.
Почему мы используем
WebSocket — для функций, где нужна мгновенная доставка данных: ставки аукционов, уведомления, live-обновления. Для менее критичных задач используем HTTP polling.
Сильные стороны
Задержка менее 50мс — критично для аукционов, игр, совместного редактирования.
Один WebSocket заменяет десятки HTTP-запросов в секунду.
Наш опыт
В проекте Oil-Game WebSocket обеспечивает real-time аукционы: ставки 6 команд обновляются мгновенно у всех участников. Также используем для live-дашбордов и уведомлений.
Для каких задач применяем
- Аукционы и торги в реальном времени
- Live-дашборды и мониторинг
- Чаты и уведомления
- Онлайн-игры
Проекты с использованием WebSocket
Fin_Empire
Многопользовательская бизнес-симуляция для обучения финансовому менеджменту и корпоративному управлению на микросервисной архитектуре.
Oil-Game
Масштабная браузерная экономическая симуляция разработки нефтяного месторождения с управлением объектами и инцидентами.
Платформа бизнес-симуляций
Онлайн-платформа для проведения бизнес-игр с аналитикой и автоматической оценкой компетенций.
Платформа бизнес-симуляций
Универсальная платформа для проведения онлайн бизнес-симуляций с поддержкой множества игр, команд и аналитикой результатов.