Найти - Пользователи
Полная версия: Посоветуйте, как лучше соединить два процесса
Начало » Python для экспертов » Посоветуйте, как лучше соединить два процесса
1
Virtul
Доброго дня, может быть задача выглядит простой, но наверняка есть подводные камни:
есть тривиальный код вокруг С библиотечки (ctypes), которая создаёт сокет сервер и читает в цикле от него сообщения, пишет в него и т.п., реализует какой-то там проприетарный протокол (при этом входящих сообщений относительно много, ~10/сек)

Нужно прочитанные в лупе сообщения отдавать через веб (здесь ~5 подключений)

Подскажите, пожалуйста, как без изысков и попроще организовать такой код? И при этом, чтобы оба сервера выдерживали приведённую нагрузку

Благодарю за помощь и советы
SoT
Посмотри в сторону асинхронного фреймворка tornado, скорее всего подойдёт под поставленные задачи
doza_and
Virtul
сообщений относительно много, ~10/сек
Это мало, если конечно сообщения умеренного размера.
Virtul
Нужно прочитанные в лупе сообщения отдавать через веб (здесь ~5 подключений)
Принудительно отдавать данные в вебе нельзя. Классический веб сервер только отвечает на запросы клиентов. Дальше решение зависит от того какое запаздывание допустимо при отображении данных.
У вас похоже можно ограничиться активным апдейтом страниц с заданной периодичностью, например поставить время инвалидации страницы 10 секунд.
Если долго - аякс, тогда думаю можно довести запаздывание до пол секунды - секунды.
Иначе веб сокет.
Virtul
Спасибо, да, веб сокетами хочу показывать, торнадо не знаю как использовать с этой либой, т.к. он файл лайк объект с fileno() хочет, не нашёл примеров как таковой создать самому из обычных строк
пока что просто через multiprocessing запускаю flask и луп библиотеки, не знаю насколько это в целом адекватно, но на пока сойдёт :)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB