协议数据存储对比

多台机器之间发送数据,我存储的我发的数据和你存储的我发的数据是否一样?将其简化为两台机器之间的数据存储问题。

数据预处理

数据内容

首先需要明确两台机器分别存储的数据内容是什么?在对应的协议中对应着什么字段?如果比较你要比较的是什么东西。

数据格式

明确数据内容后,需要了解存储的是什么格式?有的是bin十六进制,有的是txt ASCII码表示,需要来回转换...

时间戳

比较内容时,需要明确其中是否包含时间戳,时间戳的格式是否一样。
有的是>>>20250829---,有的是|||08291509。这些东西的存在对于内容的比较在compare(软件Beyond Compare)中的显示有着很大的阻力。
所以需要特别注意这一块的处理。

建议:在处理数据时,使用正则表达式表示出需要的格式,然后统一删除。

实际比较

实际比较 -- 延时

涉及两台机器之间的交互时,谁发谁收?其中的延时代表着发数据的一方在开始时会多存数。
比如我已经发了数据,自己也存了,但你还没收到,所以你没存。

实际比较 -- 存储时机

除一开始的数据存储量差异外,还需要考虑双方本身存储的时机。
是一包一存还是达到一定数据量存储?这些都有可能造成存储的差异。

如果能找到合理的理由解释,那么只要比较中间的数据即可。

实际操作建议

把数据放到一起,命名格式需要有明显区别,让你知道谁是机器1的数据,谁是机器2的数据?
中间处理过程中千万不能晕,保持名字的统一编码情况,1都是机器1,2都是机器2。
(当然不怕麻烦直接都写明白也是极好的)

短短几行字中真的蕴含了无限的踩坑血泪啊....
望周知,提前做好规划,把该弄的弄明白。后面也会节约很多时间。

posted @ 2025-08-29 15:18  芋圆院长  阅读(9)  评论(0)    收藏  举报