我有一个非常典型的场景:
浏览器 – >网络服务器 – >网络服务
我已经看过很多关于压缩从Web服务器发送到浏览器的数据以节省带宽的好处的文章/文档,但我想知道在Web服务和Web服务器之间压缩数据是否有类似的好处?
XML应该压缩得非常小,所以当然我们在带宽方面也会获得相同的好处,但我特别想知道它是否会被Web服务器所需的处理能力所抵消,以解密收到的SOAP消息.
有没有人为网络服务启用了gzip,并且有没有任何性能提升?
就此而言,Web服务客户是否会首先了解gzip?或者,启用加密是浪费时间,Web服务客户永远不会利用它?
解决方法
问题归结为您的服务器需要备用什么 – cpu或带宽?如果你经常等待网络,但你的cpu空闲,那么你可能应该考虑压缩.如果你的cpu很忙,但你没有发送太多数据,那么压缩可能不适合你.
XML是一种非常冗长(更重要的是,重复性)的语言,因此压缩可能会对传输的数据量产生相当大的影响.
压缩仅在双方支持时才有用,否则翻转开关将无效.如果实际上没有使用压缩,那么支持压缩的广告几乎没有什么区别.
最后,如果你是传输者,它不一定是全有或全无. Gzip压缩(LZ77)可调,以优化速度,大小或介于两者之间.如何进行调整取决于您的实现,但只有发送数据的一方可以决定.解压缩高度压缩的gzip数据不会比解压缩只是轻微压缩的数据更多的资源,所以收件人无论如何都不应该关心.