什麼原理讓谷歌瀏覽器如此流暢,但是佔用了較多的內存?
01-03
我認為題主在一定程度上回答了自己的問題~
v8設計之初就是以空間換時間的路子,各種緩存,恨不得把你的內存一口吃掉。順便說,所以safari更新的時候有一句廣告語「比chrome消耗更少的資源」。
內存不用留著長毛?
我個人認為:
首先google chrome採用了改良的webkit內核進行網頁渲染(今年google將大規模修改webkit代碼,並命名為blink),能夠有效率的運用存儲器chrome具有dns預先截取功能,在你瀏覽一個網頁的時候就會自動把你當前網頁的所有鏈接轉換為ip地址形式,這樣你點擊網頁內的鏈接就能省去了dns解析的時間(10多ms左右)chrome採用的google研發的v8 js渲染引擎的效率很高,
chrome也支持gpu硬體加速,這功能的優勢明顯體現在圖片比較多的網頁上,可以有效的減少對cpu的依靠,也提高了渲染速度,也防止了滾動時圖片「裂」掉的情況。同時地址欄也有一個功能所見即所得(好像叫做這個名,忘了),就是在你輸入網址或者輸入搜索關鍵詞後,在你沒有按下回車之前就開始載入網頁。不過現在這個功能好像消失了一樣(選項還在),不像以前有個版本你明顯可以看出效果來。為什麼佔用內存高?
因為chrome用了多個進程,來防止假死,尤其是在安裝擴展程序較多的時候,幾乎是一個擴展程序一個進程(這個也說不好,比如在內存特別小的機器上面,chrome就選擇所有擴展程序一個進程)另外webkit的高速渲染就需要更多的內存
多說句,現在的內存條都白菜價了,4g、8g內存的用戶已經不佔少數了,chrome為了更好的體驗佔用了較多的內存也值得了我並不算太專業,歡迎各位批評指正!推薦閱讀:
※不會編程的人如何開發一個APP?
※為什麼電子書沒有像視頻、音樂一樣走向免費模式?
※如何寫互聯網產品分析報告,從哪些方面入手?
※互聯網行業獵頭,做獵頭經常加班好累,做hr加班多嗎?
※Facebook 發布了哪些開源工具?分別有何用途?