2

我目前正在将服务器功能集成到运行复杂测量系统的软件中。客户端将是来自另一家公司的软件,它会定期向我的软件询问系统的当前状态。

现在我的问题是:设计提供这些状态信息的协议的最佳方式是什么。有许多不同的状态必须被传输。

我已经看到了解决方案,它们生成不同的状态标志,然后仅传输例如 32 位数字,其中每个位代表不同的状态。

例子:

  • 位 0 - 系统在线
  • 位 1 - 正在进行测量
  • 位 2 - 温度稳定......等等。

此解决方案将产生非常少的流量。虽然它对我来说似乎很不灵活,也很难调试。

另一个我认为可以做到的是将每个州转移到州名之前:

例子: #SystemOnline#1#MeasurementInProgress#0#TemperatureInProgress#0#.....

此解决方案将产生更多流量。但它似乎更加灵活,因为每个状态转移的顺序无关紧要。此外,它应该更容易调试。

是否有人从经验中知道解决问题的好方法,或者是否有人知道我可以找到最佳实践的良好知识来源。我只是想防止试图重新发明轮子

4

1 回答 1

0

一旦您向远程系统发出网络请求,等待响应,并接收并解码响应,那么响应是 32 位还是 32K 就无关紧要了。您每秒会产生多少次流量?如果小于 1,则影响更小。因此,使用对客户端来说最容易实现和最自然的任何东西,无论是字符串还是 XML。

于 2011-06-01T10:11:54.383 回答