我曾经读过某个地方,由于zip文件的性质,下载压缩文件要比相同大小的未压缩文件花费更长的时间。
这是真的还是废话?
编辑:我正在谈论HTTP流量
我曾经读过某个地方,由于zip文件的性质,下载压缩文件要比相同大小的未压缩文件花费更长的时间。
这是真的还是废话?
编辑:我正在谈论HTTP流量
Answers:
当然,当连接使用compression时。
您无法有效地压缩2次数据。因此,打开压缩功能后,传输1 MB的zip文件比传输1 MB的txt文件要慢。
注意:这取决于传输协议。FTP或其他协议没有内置压缩。HTTP有。
如果通过标准FTP或HTTP下载,则不是这样。有关其他连接类型,请参见Christopher的答案。
假设连接相同,则下载速度取决于文件的大小。
如果启用了自动病毒检查,下载结束时可能会延迟,因为它必须打开并解压缩zip文件才能检查内容,而不是直接检查文件。
如前所述,HTTP流量可以压缩,但并非总是如此。
您可能是在人们使用电话调制解调器而不是adsl /电缆调制解调器的时候读过的。在这种情况下,文本在发送或接收之前已被压缩,因此文本文件的发送速度会更快。
答案实际上是“取决于”:取决于Web服务器选择发送文件的格式。
如果服务器使用二进制原样字节生成答案,则大小相同的压缩文件和解压缩文件将以相同的速度下载。
如果服务器以Base64编码生成响应,则它将增加字节数,并且压缩后的文件将花费更长的时间下载。尽管几年前已经非常流行,但大多数现代Web服务器都不再这样做。
解释一下,base64格式是6位可显示字符的流。这意味着,例如,将6 * 8 = 48位的6个二进制字节编码为48/6 = 8个字符。通常,对于n个二进制字节,发送的base64字符数为(n * 8)/6。因此,发送n个二进制字节比发送n个文本字节要慢33%(8除以6),因为发送的字符更多已发送。