Зміст

Технологія

Socket.IO

Socket.IO — це бібліотека для двостороннього зв'язку між сервером і браузерами в реальному часі. Працює через WebSocket, переходить на HTTP long-polling, коли мережа блокує WebSocket, і перепідключається автоматично. Я побудував на ньому платформу мультиплеєрних ігор

Тип
Технологія
Офіційний сайт
socket.io
У моїй роботі
Проєкти 1 · Інструменти 1 · Послуги 2
Опубліковано

Де я її застосовую

Що таке Socket.IO і як я використовую його для продуктів реального часу?

Продукти реального часу ламаються в мережі, а не на демо. Socket.IO одразу дає мені кімнати, підтвердження отримання й перепідключення, тож час іде на продукт, а не на інфраструктурну обв'язку

Основні факти

Тип
бібліотека для двостороннього подієвого зв'язку в реальному часі ·
Транспорт
WebSocket, а HTTP long-polling як запасний варіант ·

Як я застосовую Socket.IO

  • Мультиплеєрні ігри для одного великого екрана. У моїй платформі екран і до 30 телефонів у кімнаті зв'язуються з сервером на Node.js через Socket.IO. Телефони надсилають введення, а сервер повертає стан гри до 60 разів на секунду. Читати кейс.
  • Компактні оновлення. У WarLine, командній стратегії, сервер надсилає лише те, що змінилося з попереднього стану, тож трафік у мобільному інтернеті лишається невеликим.
  • Мережі, які обриваються. Гості грають через мобільний інтернет, а не в одній Wi-Fi-мережі. Коли телефон на мить втрачає мережу, Socket.IO повертає його в ту саму кімнату.
  • Живі інтерфейси. Той самий підхід дає живі оновлення в продуктах, зокрема в AI-інтерфейсах реального часу. Докладніше — AI для бізнесу.

Коли я обираю Socket.IO і його обмеження

Socket.IO я використовую, коли продукту кімнати, події й надійне перепідключення потрібні більше, ніж максимальна швидкість: в іграх, живих квізах, спільній роботі, сповіщеннях.

Для аудіо й відео або для даних, які мають іти напряму між двома пристроями, краще підходить WebRTC. А серверу, який тримає стан у пам'яті, потрібен план, як вийти за межі одного процесу; я розраховую це під кожен проєкт, а не обіцяю наперед кількість гравців.

Працює разом із

Джерела

  1. Socket.IO Documentation — Socket.IO ·

Контакти

Є ідея? Втілимо її разом