我的实时Web应用程序生成ajax请求以获取JSON经济数据响应.
返回的数据通常是对象数组的形式.
由于数组通常有很多元素(虽然发送的数据是由服务器进行的,但是为了使响应大小保持最小),我仍然保持响应中的密钥非常短.
例如,而不是使用描述:我使用d:而不是使用宽度:我使用w:等等......
这样做会减小响应的大小,但是在客户端,非常短的非人类可读密钥会使JavaScript代码(访问对象)的可读性降低.
唯一的解决方案似乎是重新解析响应并使用漂亮的密钥重建对象,或者在接收的原始对象中替换它们.但这可能会损害JavaScript代码性能,从而导致更多延迟......
存在更好的解决方案?
编辑:
正如BjörnRobberg在评论中所说,我做了一个比较:
pretty-response.json 459,809 bytes
short-response.json 245,881 bytes
pretty-response.json.zip 28,635 bytes
short-response.json.zip 26,388 bytes
Run Code Online (Sandbox Code Playgroud)
因此,当服务器压缩响应时,差异实际上是微乎其微的.
仍然,漂亮的响应要求服务器压缩450 KB的数据,而短响应只需240 KB.
这是否会影响服务器性能(或者有没有办法测量它)?
任何人都可以解释何时使用协议缓冲区而不是JSON用于微服务架构?反之亦然?同步和异步通信.