#python #sockets #tcp #embedded
#python #сокеты #tcp #встроенный
Вопрос:
У меня есть встроенная система, которая контролирует множество датчиков (GPS, скорость двигателя, температуру ..)
Я настраиваю клиент-сервер с использованием сокетов на python, и я могу отправить с клиента (встроенной системы) на сервер (ноутбук) строковое сообщение типа «Привет от клиента».
Но для меня было бы здорово отправлять данные с заранее определенными категориями, чтобы сервер знал тип сообщения. После приема сервер знает, что он получил, например, координаты GPS или скорость двигателя.
Есть ли способ сделать это в TCP или с помощью какой-либо библиотеки или фреймворка?
Спасибо
Комментарии:
1. Да, категория должна быть частью данных. Все, что вы хотите отправить, должно быть частью данных.
2. Существует бесчисленное множество способов сделать это через TCP. Вы могли бы настроить обычный старый веб-сервер — отправка структурированных данных по TCP — это то, что есть HTTP , если ваша встроенная система может отправлять http-запросы, это может быть проще всего. Вы можете использовать буферы протокола или определить свой собственный протокол передачи данных.
Ответ №1:
Я могу придумать три способа
- Поместите тип сообщения в заголовок (возможно, рядом с размером сообщения)
- Используйте разные сокеты для каждого типа сообщений (уродливые и сложные, но работают)
- Используйте какой-нибудь pub-sub, например, Kafka, ZeroMQ или RabbitMQ для передачи тем