我目前正在将服务器功能集成到运行复杂测量系统的软件中。客户端将是来自另一家公司的软件,它会定期向我的软件询问系统的当前状态。
现在我的问题是:设计提供这些状态信息的协议的最佳方式是什么。有许多不同的状态必须被传输。
我已经看到了解决方案,它们生成不同的状态标志,然后仅传输例如 32 位数字,其中每个位代表不同的状态。
例子:
- 位 0 - 系统在线
- 位 1 - 正在进行测量
- 位 2 - 温度稳定......等等。
此解决方案将产生非常少的流量。虽然它对我来说似乎很不灵活,也很难调试。
另一个我认为可以做到的是将每个州转移到州名之前:
例子:
#SystemOnline#1#MeasurementInProgress#0#TemperatureInProgress#0#.....
此解决方案将产生更多流量。但它似乎更加灵活,因为每个状态转移的顺序无关紧要。此外,它应该更容易调试。
是否有人从经验中知道解决问题的好方法,或者是否有人知道我可以找到最佳实践的良好知识来源。我只是想防止试图重新发明轮子