В настоящее время я интегрирую функциональность сервера в программное обеспечение, которое использует сложную измерительную систему.Клиент будет программным обеспечением другой компании, которое будет периодически запрашивать у моего программного обеспечения текущее состояние системы.
Теперь мой вопрос: каков наилучший способ разработки протокола для предоставления этой информации о состоянии.Есть много разных состояний, которые должны быть переданы.
Я видел решения, в которых они генерируют разные флаги состояния, а затем передают, например, только 32-битное число, где каждый бит обозначает свое состояние.
Пример:
- Бит 0 - система включена
- Бит 1 - Выполнение измерений
- Бит 2 - Стабилизация температуры ... искоро.
Это решение будет производить очень мало трафика.Хотя это кажется мне очень негибким, а также очень сложным для отладки.
Другое, что я думаю, что это можно сделать, - перенести каждое состояние, которому предшествует название состояния:
Пример: #SystemOnline#1#MeasurementInProgress#0#TemperatureInProgress#0#.....
Это решение увеличит трафик.Но это выглядит намного более гибким, потому что порядок, в котором передается каждое государство, не имеет значения.Также должно быть намного легче отладить.
Кто-нибудь знает из опыта хороший способ решения проблемы, или кто-нибудь знает хороший источник знаний, где я могу найти лучшие практики.Я просто хочу предотвратить попытки изобретать велосипед