2016-11-07 7 views
1

У меня есть настройка, в которой некоторые клиенты TCP подключаются к программе на моем сервере. Я пытаюсь вставить nginx между ними, так что соединение tcp идет от клиента -> nginx -> program. Это значит, что я могу подключиться к потоку и позволить клиентам websocket запрашивать одну из данных потока.Как мультиплексировать поток tcp для нескольких клиентов websocket с помощью Nginx/Openresty?

Я смог создать прослушивающий сокет TCP с https://github.com/openresty/stream-lua-nginx-module, который получает данные, а затем подключается к внешней программе с помощью ngx.socket.tcp(). А также я использую lua-resty-websocket для создания сервера websocket (каждый сеанс должен подключаться к одному из потоков, а несколько таких сеансов могут подключаться к одному потоку).

Что может быть для контекста websocket для подключения к этому потоку?

ответ

0

Чтобы связаться с клиентом websocket без каких-либо изменений во внешней программе, вы установите nginx между ними как «транслятор»?

Если да, возможно, https://github.com/openresty/lua-resty-websocket будет вам полезна.

+0

Я уже использую это, я случайно удалил это в редактировании исходного вопроса, добавит это сейчас. – tavish