cnpm下载依赖包速度快的原理探究
我們經常會使用 cnpm 去下載依賴,是因為用 cnpm 下載依賴會比 npm 快。
那么,用 cnpm速度快的原因是什么呢?
💪最近,我對cnpm速度快的原因進行了探究:
1、源
很大的一個原因是源的指向不同–cnpm的源是中國鏡像站。
官方解釋:中國鏡像站是一個完整 npmjs.org 鏡像,同步頻率目前為 10分鐘 一次以保證盡量與官方服務同步。
通俗來說:因為 npm 的遠程服務器在國外,淘寶為我們搭建了一個國內的npm服務器 。我們下載依賴時,直接訪問淘寶的國內服務器,速度就快了。
cnpm 支持 npm 除了 publish 之外的所有命令
另外 cnpm提供 了同步命令cnpm sync express
2、 我的探究
如果只是源的不同影響了速度,那么我將npm的源設置成淘寶源與用cnpm下載速度的應該是一樣的。
npm config set registry https://registry.npm.taobao.org/ npm install但是經過我的測試,并不是這樣。用cnpm命令安裝依賴始終比npm快💣
💡我觀察發現,這兩種方式安裝依賴過程中已及下載后的node_modules文件夾是不一樣的:
cnpm依賴安裝中
npm依賴安裝中
cnpm依賴安裝完成
npm依賴安裝完成
安裝完成后,雖然cnpm安裝的node_modules文件夾里面的多了一些_開頭的文件,但是總的文件大小是一樣的。
?于是我猜測包數量是一樣的,只是存在一些npm包的軟鏈接。
? 驗證:
然后,我修改了其中一個依賴包里面的代碼,然后打開對應的_開頭的依賴包,發現也同步發生了修改。反之亦然。我認為這足以驗證我的猜想:cnpm安裝的node_modules里面存在軟鏈接。
?? 另外,我還猜測cnpm速度快的原因還與解析依賴包之間依賴的算法有關。
? 后來,我仔細看了官方文檔,里面說明了支持gzip 壓縮。這也是一個下載速度快的原因。
總結
cnpm安裝依賴包速度比npm的原因有:
歡迎評論交流
?? 更多前端知識歡迎關注公眾號交流
?? 這里有你想知道的web前端知識
名稱:你想知道的web前端
總結
以上是生活随笔為你收集整理的cnpm下载依赖包速度快的原理探究的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FFMPEG推流到RTMP服务器命令
- 下一篇: 信息论与编码2 期末复习-BCH码