申成禄为什么传输文件时要先压缩?

时间:2020-11-28 07:15 来源:seo 作者:小可爱科技知识网 点击量:

申成禄为什么传输文件时要先压缩?

  总觉得上网下载东西也好,别人qq发送东西过来也好,总是得到的经常是一个或几个压缩文件。下回来还要解压挺麻烦的。

  如果说压缩是为了减少文件数量,那么为什么就一个文件还要压缩?

  如果说压缩是为了节约空间或流量,那为什么压缩完根本没有小多少还要压缩?

  还有其他的不解...

  谢邀.知乎潜水两年第一次答题

  如果是传送很多零碎的小文件,并且数量比较多的时候压缩包确实优势巨大.按正常情况算(50%压缩率)能节约一半存储空间.一半传输时间,甚至更多.有文件校验,MD5或者压缩包加密.防止篡改.

  至于别人给你发一个文件都要压缩一下...可能是个人习惯吧.

  网上下载的软件或者其他东西压缩包里面基本都是好多文件如:xxx绿色破解版这些必须压缩,因为能方便管理.防篡改.提升下载速度,减小服务器磁盘io等等.....

  特意找了一个压缩包看看

  图:一个500+Mb的文件夹通过压缩可以达到43%的压缩比,节省大概300Mb的空间

  附百度找到的一篇文章

  是否需要对网络传输数据进行压缩?如何选择压缩算法?

  答的不好,各路大神轻喷

  假设千兆网的带宽是100MB/s,压缩的性能是200MB/s,申成禄传输的文件是100MB,压缩比是1:2。

  如果你不压缩,那么传输的时间是1s。那么,你总共用了1s完成这件事情。

  如果你先压缩,那么,得使用0.5s的CPU时间,得到一个50MB的文件,然后再使用0.5s的时间进行传输。那么,你总共用了1s完成这件事情。

  如果是多核,你可以边压缩边传输文件,时间一共大概是0.5s。那么,你总共用了0.5s完成这件事情。

  相比于压缩空间,压缩包更重要的意义在于打包多个彼此相关联的文件。

  比如一些绿色版软件,其中的可执行程序(*.exe)依赖于一些外部资源,比如各种图片资源、动态链接库资源等。这时候如果让用户分别下载这些资源,无疑会降低用户体验。打包以后,程序和其依赖的资源就一次全下完了,而且不会有缺漏。

  至于一个文件也要压缩的,有时候是为了规避系统的检测。比如大家都知道的,微信传文件,如果传的是 apk,那么微信这边会自作主张将其扩展名改为 apk.1,导致接收方无法安装相应的 APP。微信这么做为了安全也可以理解,之前的 927 事件还历历在目呢。那么为了避免不必要的麻烦,就可以将这个 apk 文件打包成 zip 发送,绕过系统的屏蔽规则。接收方也没有增添多少麻烦,只需要解压一下就可以安装了。QQ 传 exe 同理。

  你可以这样想,如果100g的文本,压缩一下只有几十个g,

  传输速度就快很多,效率也高,总体时间比不压缩要少,

  但是,如果你带宽够,硬件好,一秒传完,就不用压缩了,

  所以传输前压缩是一种受限于网络,磁盘空间等的折中办法。

  值得一提的是,很多时候传输一堆文件压缩可能是想要打包在一起,简洁方便。

  绕过屏蔽规则也有,而且压缩包检查也是对服务器有很大的消耗,所以通过压缩绕过屏蔽也是可行的。

  一个是打包,另一个就是校验功能,

当前位置:主页 > 生物学知识 >

声明:本文小可爱科技知识网整理不代表个人观点,转载请注明原文,点击还能查看更多的文章;本文网址: http://www.kozbods.com/shengwu/7647.html

围观: 次 | 责任编辑:小可爱科技知识网



回到顶部