9月28日,有媒体消息称,微信对同一文件,会保存10份,所以微信动不动就能吃掉你手机几十G的空间。
微信本可以少占用大量空间,但却没这么做。
而你却拿微信毫无办法,又不能不用微信。科小编自查了下,微信已用空间达到47.89G,都快赶上3个原神、4个王者荣耀、10个抖音了。
为了手机弱小无助的存储空间,科小编深扒了一下发现,微信的确会“一个文件保存10次”。这存文件的软件逻辑,粗糙到像是小学生做出来的。
1个视频保存10份
有网友@科技老男孩,调查了IOS版微信,找到了其中最占你手机空间的“乱码”文件夹。
这些“乱码”,实际上是用户初始微信号的MD5值,一串32位16进制数。MD5算法是一种广泛使用的密码散列函数,用于确保信息传输完整一致。
这些文件夹存放了微信用户数据,如果你登录过2个微信号,就会看到2个这种“乱码”文件夹。
这些文件中,占用空间最大的,自然就是聊天中的各种视频和照片文件了,微信都给你认认真真存好了。
可怪就怪在,这里面有很多视频和音频文件,都是重复的!白白占用你手机空间。
按照微信的程序逻辑,如果你给10个好友发送同一个50MB的视频,微信会全都各自保存一遍,那么微信就会占用你500MB的空间。
简单来说,你收到一个视频或文件,然后转发给别人,就会生成两个单独的文件,分别保存,然后每转发1次,继续+1。
手机存储空间,就这么被占满了。
你以为这就完了么?其实实际情况比上面所说的还要糟糕。
微信还会为在聊天界面,生成一个几十MB的压缩文件,用来减少对系统的资源占用。而它也会像原文件一样重复保存。
复制了也就算了,可占着存储空间,文件还过期看不了,那就最离谱了。
这种逻辑,得是怎样的“贵物程序员”才能想得出来!
普通程序员
会给你省下450MB空间
其实在服务器和网盘领域,早就有成熟的技术,可以完美解决这样的问题,这就是基于MD5的文件去重。
如果你给10个好友发送了一样的视频,按照正常程序员的逻辑,都是只保存一份,其他的九份文件做个映射就完了。
这样就给你省下450MB的存储空间。
通过识别文件的哈希数,删除重复的文件,在被删除的地方放下一个指向原文件的副本。
以我们常用的某网盘为例,数万人上传同一个“学习资料”视频,网盘的服务器实际上,一般也只会保存数十个相同的视频,用以备份和分发,从而大大节省空间,还省钱。
这样就可以做到既不影响使用,又可以大幅降低内存占用。顺便,也实现了所谓的“极速秒传“功能。你上传的“学习”视频,别人早就上传过了,网盘直接给你个映射,秒速搞定。
网盘省钱了,用户效率提高了,双赢。
微信本可少占用大量空间
为什么不做?
相关话题已经登上了热搜。
或许是微信为了大力促进半导体行业的发展,促进大容量手机的销量,变相推动经济发展?
又或许是担心用户,在删除跟某个好友的聊天记录时,同时也清理了与其他好友的同一份图片视频?
所以简单粗暴的,耗费无数空间资源,保存无数次文件?反正锅它不想背,毕竟国民级App,一点点风险都能被无限放大。
这种文件管理机制,或许便是微信没用多久,就冒出几十个G数据的最大原因了。
有网友点评称:
这个保存逻辑,是我最开始学程序的时候不知道怎么识别相同文件的时候干出来的事。就是一个账号对应一个文件夹,把所有内容存进去,当时还想着把微信或者QQ的源代码扒下来看看他们是怎么写的,但没去做,结果他们的也停留在入门半年的水平吗?
还是说觉得反正是用户的储存没必要做这些。
也有网友吐槽称,这很符合鹅厂的作风:因为占用的是我们的存储器空间,又不是微信的存储器。
“自己服务器数据库当宝,用户储存空间当垃圾场。”
微信这种存储逻辑,造成了手机空间的浪费。你只能通过一次次的手动清理,甚至是卸载重装微信,才能彻底清除冗余的数据。
不堪负重的手机
这个问题,科小编搜索了下,其实早在3、4年前,就有网友放应过。只不过时至今日,情况依旧。
如今的手机APP,都往全能方向上推进,恨不得把自己做成一个操作系统。
社交、支付、直播、视频、游戏等等,一股脑全塞进去。根本不考虑大家是否用得上,手机空间是否足够,真正的常用功能部分,或许不到1%。
说到这里,相信大家都不禁发出怒吼,到底为什么?这究竟是道德的沦丧,还是人性的泯灭?有网友调侃,这或许也是一种“大格局”的防御策略。
你装微信用了几十G了,未来出现个飞信之类的竞品,你就会掂量一下手机存储空间够不够,64G的手机直接投降,装了微信基本不用考虑装别的了。
这不就变相挤压竞争对手了吗。
在 2019 年的微信之夜上,微信之父张小龙曾说:
“全国每天都有5亿人在吐槽微信,还有1亿人在教我怎么做产品。”
“每次改版用户都不习惯,但不能按照用户投票来决定改版。”
所以,想要微信回归“小而美”的朋友,估计是没戏了,努力适应“大而肥”吧。
最后,大家手机中的微信占了多少G空间呢?欢迎下方评论留言~