9月28日,有媒體消息稱(chēng),微信對(duì)同一文件,會(huì)保存10份,所以微信動(dòng)不動(dòng)就能吃掉你手機(jī)幾十G的空間。
微信本可以少占用大量空間,但卻沒(méi)這么做。
而你卻拿微信毫無(wú)辦法,又不能不用微信。科小編自查了下,微信已用空間達(dá)到47.89G,都快趕上3個(gè)原神、4個(gè)王者榮耀、10個(gè)抖音了。
為了手機(jī)弱小無(wú)助的存儲(chǔ)空間,科小編深扒了一下發(fā)現(xiàn),微信的確會(huì)“一個(gè)文件保存10次”。這存文件的軟件邏輯,粗糙到像是小學(xué)生做出來(lái)的。
1個(gè)視頻保存10份
有網(wǎng)友@科技老男孩,調(diào)查了IOS版微信,找到了其中最占你手機(jī)空間的“亂碼”文件夾。
這些“亂碼”,實(shí)際上是用戶(hù)初始微信號(hào)的MD5值,一串32位16進(jìn)制數(shù)。MD5算法是一種廣泛使用的密碼散列函數(shù),用于確保信息傳輸完整一致。
這些文件夾存放了微信用戶(hù)數(shù)據(jù),如果你登錄過(guò)2個(gè)微信號(hào),就會(huì)看到2個(gè)這種“亂碼”文件夾。
這些文件中,占用空間最大的,自然就是聊天中的各種視頻和照片文件了,微信都給你認(rèn)認(rèn)真真存好了。
可怪就怪在,這里面有很多視頻和音頻文件,都是重復(fù)的!白白占用你手機(jī)空間。
按照微信的程序邏輯,如果你給10個(gè)好友發(fā)送同一個(gè)50MB的視頻,微信會(huì)全都各自保存一遍,那么微信就會(huì)占用你500MB的空間。
簡(jiǎn)單來(lái)說(shuō),你收到一個(gè)視頻或文件,然后轉(zhuǎn)發(fā)給別人,就會(huì)生成兩個(gè)單獨(dú)的文件,分別保存,然后每轉(zhuǎn)發(fā)1次,繼續(xù)+1。
手機(jī)存儲(chǔ)空間,就這么被占滿(mǎn)了。
你以為這就完了么?其實(shí)實(shí)際情況比上面所說(shuō)的還要糟糕。
微信還會(huì)為在聊天界面,生成一個(gè)幾十MB的壓縮文件,用來(lái)減少對(duì)系統(tǒng)的資源占用。而它也會(huì)像原文件一樣重復(fù)保存。
復(fù)制了也就算了,可占著存儲(chǔ)空間,文件還過(guò)期看不了,那就最離譜了。
這種邏輯,得是怎樣的“貴物程序員”才能想得出來(lái)!
普通程序員
會(huì)給你省下450MB空間
其實(shí)在服務(wù)器和網(wǎng)盤(pán)領(lǐng)域,早就有成熟的技術(shù),可以完美解決這樣的問(wèn)題,這就是基于MD5的文件去重。
如果你給10個(gè)好友發(fā)送了一樣的視頻,按照正常程序員的邏輯,都是只保存一份,其他的九份文件做個(gè)映射就完了。
這樣就給你省下450MB的存儲(chǔ)空間。
通過(guò)識(shí)別文件的哈希數(shù),刪除重復(fù)的文件,在被刪除的地方放下一個(gè)指向原文件的副本。
以我們常用的某網(wǎng)盤(pán)為例,數(shù)萬(wàn)人上傳同一個(gè)“學(xué)習(xí)資料”視頻,網(wǎng)盤(pán)的服務(wù)器實(shí)際上,一般也只會(huì)保存數(shù)十個(gè)相同的視頻,用以備份和分發(fā),從而大大節(jié)省空間,還省錢(qián)。
這樣就可以做到既不影響使用,又可以大幅降低內(nèi)存占用。順便,也實(shí)現(xiàn)了所謂的“極速秒傳“功能。你上傳的“學(xué)習(xí)”視頻,別人早就上傳過(guò)了,網(wǎng)盤(pán)直接給你個(gè)映射,秒速搞定。
網(wǎng)盤(pán)省錢(qián)了,用戶(hù)效率提高了,雙贏。
微信本可少占用大量空間
為什么不做?
相關(guān)話題已經(jīng)登上了熱搜。
或許是微信為了大力促進(jìn)半導(dǎo)體行業(yè)的發(fā)展,促進(jìn)大容量手機(jī)的銷(xiāo)量,變相推動(dòng)經(jīng)濟(jì)發(fā)展?
又或許是擔(dān)心用戶(hù),在刪除跟某個(gè)好友的聊天記錄時(shí),同時(shí)也清理了與其他好友的同一份圖片視頻?
所以簡(jiǎn)單粗暴的,耗費(fèi)無(wú)數(shù)空間資源,保存無(wú)數(shù)次文件?反正鍋它不想背,畢竟國(guó)民級(jí)App,一點(diǎn)點(diǎn)風(fēng)險(xiǎn)都能被無(wú)限放大。
這種文件管理機(jī)制,或許便是微信沒(méi)用多久,就冒出幾十個(gè)G數(shù)據(jù)的最大原因了。
有網(wǎng)友點(diǎn)評(píng)稱(chēng):
這個(gè)保存邏輯,是我最開(kāi)始學(xué)程序的時(shí)候不知道怎么識(shí)別相同文件的時(shí)候干出來(lái)的事。就是一個(gè)賬號(hào)對(duì)應(yīng)一個(gè)文件夾,把所有內(nèi)容存進(jìn)去,當(dāng)時(shí)還想著把微信或者QQ的源代碼扒下來(lái)看看他們是怎么寫(xiě)的,但沒(méi)去做,結(jié)果他們的也停留在入門(mén)半年的水平嗎?
還是說(shuō)覺(jué)得反正是用戶(hù)的儲(chǔ)存沒(méi)必要做這些。
也有網(wǎng)友吐槽稱(chēng),這很符合鵝廠的作風(fēng):因?yàn)檎加玫氖俏覀兊拇鎯?chǔ)器空間,又不是微信的存儲(chǔ)器。
“自己服務(wù)器數(shù)據(jù)庫(kù)當(dāng)寶,用戶(hù)儲(chǔ)存空間當(dāng)垃圾場(chǎng)。”
微信這種存儲(chǔ)邏輯,造成了手機(jī)空間的浪費(fèi)。你只能通過(guò)一次次的手動(dòng)清理,甚至是卸載重裝微信,才能徹底清除冗余的數(shù)據(jù)。
不堪負(fù)重的手機(jī)
這個(gè)問(wèn)題,科小編搜索了下,其實(shí)早在3、4年前,就有網(wǎng)友放應(yīng)過(guò)。只不過(guò)時(shí)至今日,情況依舊。
如今的手機(jī)APP,都往全能方向上推進(jìn),恨不得把自己做成一個(gè)操作系統(tǒng)。
社交、支付、直播、視頻、游戲等等,一股腦全塞進(jìn)去。根本不考慮大家是否用得上,手機(jī)空間是否足夠,真正的常用功能部分,或許不到1%。
說(shuō)到這里,相信大家都不禁發(fā)出怒吼,到底為什么?這究竟是道德的淪喪,還是人性的泯滅?有網(wǎng)友調(diào)侃,這或許也是一種“大格局”的防御策略。
你裝微信用了幾十G了,未來(lái)出現(xiàn)個(gè)飛信之類(lèi)的競(jìng)品,你就會(huì)掂量一下手機(jī)存儲(chǔ)空間夠不夠,64G的手機(jī)直接投降,裝了微信基本不用考慮裝別的了。
這不就變相擠壓競(jìng)爭(zhēng)對(duì)手了嗎。
在 2019 年的微信之夜上,微信之父張小龍?jiān)f(shuō):
“全國(guó)每天都有5億人在吐槽微信,還有1億人在教我怎么做產(chǎn)品。”
“每次改版用戶(hù)都不習(xí)慣,但不能按照用戶(hù)投票來(lái)決定改版。”
所以,想要微信回歸“小而美”的朋友,估計(jì)是沒(méi)戲了,努力適應(yīng)“大而肥”吧。
最后,大家手機(jī)中的微信占了多少G空間呢?歡迎下方評(píng)論留言~