Как обслуживать несколько веб-сокетов - PullRequest
2 голосов
/ 01 декабря 2010

У меня 30 смарт-датчиков, распределенных в нескольких частных сетях с доступом в Интернет (все они). Я должен установить постоянное соединение (сокет) между этими датчиками и сервером, который имеет общедоступный IP-адрес.

Пользователь может получить доступ к каждому датчику через веб-сайт (Django) и отправлять или получать данные.

С вашей точки зрения, как я могу обеспечить несколько постоянных и частных соединений? Я нашел https://github.com/gregmuellegger/django-websocket,, но я думаю, что он не подходит для моего приложения, потому что я не могу восстановить существующее соединение с сокетом из других представлений Django.

Любые предложения очень хорошо приняты.

Я нашел хороший подход с использованием Twisted Perspective Broker с JSON-RPC на сервере, предоставляющем методы для поддержки каждого интеллектуального датчика, а с другой стороны каждый датчик будет использовать библиотеку JSON для аутентификации (основной) и отправки данных.

Что вы думаете? Это хорошее решение? Я опубликую результаты, как только протестирую их.

1 Ответ

0 голосов
/ 01 декабря 2010

Настройте отдельный сервер, который поддерживает постоянные соединения, и разрешите приложению django запрашивать его. Twisted может предоставить отличную среду для написания простых серверов с одним и тем же названием, и здесь есть хорошее руководство по написанию XML-RPC-сервера здесь Python имеет отличную поддержку XML-RPC, и его должно быть достаточно легко запустить и запустить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...