Задать вопрос
akalend
@akalend
программирую

Что должен делать модуль websockets?

реешил реализовать модуль для websockets,

появились вопросы по реализации логики


я так понимаю, что WEB сервер должен принять заголовки на соединение,

отдать соответствующие заголовки клиенту и прокинуть соединение на бэкенд.

далее висит постоянное соединение и WEB сервер работает как прокси.
  • Вопрос задан
  • 3056 просмотров
Подписаться 2 Оценить 3 комментария
Пригласить эксперта
Ответы на вопрос 4
vsviridov
@vsviridov
Посмотрите как они сделаны для nodejs, почитайте спеки. Но не забывайте, что последняя версия протокола содержит уязвимость, и была отозвана из Firefox & Opera.
Ответ написан
azproduction
@azproduction
У вас 2 пути. С нуля www.whatwg.org/specs/web-socket-protocol/
Либо посмотреть как сделано в серверной части socket.io/ Вот файл отвечающий за логику ws github.com/LearnBoost/Socket.IO-node/blob/master/lib/socket.io/transports/websocket.js
Ответ написан
Комментировать
akalend
@akalend Автор вопроса
программирую
как делать с ноля — это более менее понятно
хотелось интегрировать в уже существующий WEB сервер
по этому и вопрос
Ответ написан
Комментировать
azproduction
@azproduction
Сейчас nginx не может проксировать Вебсокеты, насчет Apache не уверен. И никаких модулей для нативной поддержки ws я не нашел.
Можно сделать так: поднять WebSocket backend (node.js + socket.io) поставить HAProxy перед nginx, который будет пересылать запросы к ws-бэкэнду напрямую.
Ну вот ещё вариант на php + phpDaemon вместо стэка node.js + socket.io: habrahabr.ru/blogs/webdev/82140/
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы