目前,在我的基于WCF的项目中,我们面临着高带宽使用问题。为了减少带宽使用,我们有一些内部串行器,它压缩数据并将这些数据传递给wcf堆栈。
示例:SendData(Stream); stream包含byte [],double?[] []
使用的优化技巧之一是仅在更改时发送数据,这是通过将先前数据与当前数据进行比较并将可空元素标记为null(如果没有任何更改)。 null为的元素在byte []中标记。每个元素由byte []中的一个位表示。因此,如果double?[] []中的任何一个特定数据没有改变,我们可以节省大约8个字节!
1)ProtoBuf中是否有上述等价物?开箱即用吗? 2)protobuf是否一直默认使用压缩? 3)建议任何其他带宽优化技术,除了我现在正在尝试的压缩之外,这对我有益!?
真的很感谢所有专家的意见和建议!