快轉到主要內容

追求不吃記憶體的瀏覽器是不現實的指標

· 民國115年丙午年
·
切換正體/简体 ·
分類 Linux系統 自由軟體議題
標籤 Firefox Google Chrome

一直有人說Firefox和Chrome一樣越來越吃記憶體(RAM),但說真的,我們能怪他們嗎…?追求低記憶體佔用的指標根本不現實。

瀏覽器的工作早就不是單純看HTML網頁那麼簡單了,它要管理行程,分多個行程開沙盒保護安全,同步服務,還要處理外掛。此外網頁會載入大量JavaScript,現在還有WebAssembly(在瀏覽器跑C與Rust低階語言寫的程式)、WebGPU存取顯卡,需要的電腦資源自然就會變多了。

比較瀏覽器剛開起來佔用的RAM代表不了什麼,分頁一多還不是一樣。

一個Youtube分頁看久了吃1GB RAM都不奇怪。

嗯…只要網頁不會像ChatGPT因為對話太長導致RAM佔用過高甚至當掉我都還能忍受啦。

即使號稱輕量的Helium Browser,開網頁多了RAM佔用也不會低到哪裡去。如果你真的想要不吃記憶體的,就去用看看純QtWebEngine或WebKitGTK做成的瀏覽器吧!譬如Qutebrowser。幾乎什麼功能都沒有,靠犧牲Chromium的安全性換速度。不然就得是Safari那種特製化的瀏覽器,才有可能在不犧牲功能性的情況下保存低記憶體佔用。可是這維護太困難了,也與主流Web標準背道而馳。

要叫那些網頁開發者別用Vue、React、Angualr,使用節省一點記憶體的框架,並且處理好server side和client side rendering?比《牛來》在臺灣上映還不可能。誰要手刻HTML + CSS啊,又不是無名小站的時代了。(順帶一提我網站用的是Hugo框架,LightHouse各項指標接近100分)

重點是如何管理分頁。然後不要裝太多擴充。

Chrome和基於Chromium開發的瀏覽器有「記憶體節省模式」,自動關閉閒置分頁的功能,這可以在設定開啟。分頁不會消失,而是從RAM釋放,切換回去就重新載入。

目前Firefox v.152還沒有Chrome那麼積極的自動釋放閒置分頁,頂多只會跳「這個分頁讓Firefox變慢了」的警告,你得手動觸發。對分頁按右鍵,卸載分頁,釋放RAM。按Shift一鍵全選,就能讓目前瀏覽以外的網頁取消載入,這樣能減少電腦壓力。

但我覺得最簡單的處理方式,還是開啟在瀏覽器啟動時,自動還原分頁功能,然後整個關掉瀏覽器再重開就好啦。

因為我覺得讓瀏覽器去自動關閉分頁顯的很不可靠,我在iPad用Firefox就很不爽,因為分頁隨時就會隨機被殺掉,不像Linux寧願撐爆RAM也要維持分頁載入。

手機瀏覽器的話因為要防止背景分頁耗電所以自動殺掉分頁可以理解,但電腦瀏覽器不應該任意關掉其他分頁呢。

此外,利用多個設定檔整理分頁也是一個方法。Firefox有垂直分頁,還有分頁群組。但沒有加入Zen Browser的工作區,而是以設定檔為主。分頁可以在不同的設定檔之間移動。如果有分頁之後要看,把它移動到另外一個設定檔就行了。

請不要再用Windows XP時代的思維看待現在的電腦了。

相關文章


感謝您的閱讀。我寫作是為了誠實表達想法,而不是追逐社群互動與流量。我很樂意傾聽你在仔細閱讀我文章之後的心得。若有內容勘誤 or 技術問題 or 回饋想法,歡迎透過本站「關於」頁面的Email與我聯絡。