Я пытаюсь реализовать довольно сложную архитектуру для настольного приложения (не для распространения, поэтому можно использовать технологию, обычно применяемую для серверов, - пожалуйста, не говорите мне использовать электрон или .NET).
В основном он должен хранить данные, поступающие из потока UDP (с новой частотой данных ~ 90 Гц). Приложение также должно открыть сервер веб-сокетов и принимать новых клиентов, в частности с планшета. Пользователь планшета должен иметь возможность устанавливать флаг, включая или отключая хранение данных.
Это очень простая блочная схема системы
Я уже использовал Django раньше, но для более стандартного использования (CMS, REST API и т. Д.). После некоторых исследований я нашел несколько инструментов, которые мог бы использовать для построения системы:
1 - Celery , который, на мой взгляд, позволяет выполнять асинхронные задачи (я думаю, я мог бы использовать его для хранения данных, поступающих из потока UDP, возможно, после накопления сотни значений или около того)
2 - Каналы Django , которые должны помочь мне в общении через веб-сокет
3 - Twisted , для приема сообщений UDP.
Что меня смущает, так это то, как интегрировать эти компоненты и обмениваться данными между ними. Похоже, что twisted - это полностью отдельный сервер, так как я могу запустить задачу сельдерея, которая принимает входные данные в виде данных и записывает их в модель django?
Как мне реализовать флаг, приходящий из webosckets? глобальная переменная?
любая помощь приветствуется!