减少火狐Firefox内存占用(Firefox内存优化)

火狐内存占用率一值居高不下,而且有愈演愈烈之势,前几天,Firefox居然占了我的电脑2.5G内存!(点击图片放大)震惊之余,我不禁开始反思,到底问题出在了哪里?

火狐内存泄露严重

1. Firefox的“内存泄露”是根本原因

什么是内存泄露(Memory Leak):当以前分配的一片内存不再需要使用或无法访问时,但是却并没有释放它,那么对于该进程来说,会因此导致总可用内存的减少,这时就出现了内存泄漏

众所周知,Firefox存在严重的内存泄露问题,官方也有相关文档说明:Reducing memory usage – Firefox#Memory leaks

据国外媒体报道,火狐工程师给出的导致“内存泄露”的原因是:

为了提高浏览效率,Firefox 使用了后进或前进缓存,将过去一定时期浏览过的内容进行存储,这样可大大加快新打开类似网页的速度,提高浏览效率。

也就是说,只要火狐内核没有做出重大革新,那么内存泄露问题就无法解决,我们能做的有

  • 加装内存条(笔者就加装到了8G内存)
  •  使用Memory Fox扩展缓解内存泄露问题。该扩展的原理不清楚,但是的确能有效的减少内存占用问题 (强制火狐释放无用的内存,增加系统可用内存)

其实,Chrome也存在内存泄露问题,只不过chrome玩了个障眼法,一个Tab一个进程(火狐是所有标签一个进程),这样每个进程只有几十M内存占用,反应很快,其实总体加起来,Chrome浏览器打开多标签的时候占用的总内存要比Firefox多多了

Chrome内存泄露

也难怪Chrome能在短短两三年内击败Firefox成为市场份额第二的浏览器,用户体验做的太好了!把优点全展示出来的同时掩盖了缺点,让人觉得它是那么的Perfect!

2. 过多的扩展是重要原因

正所谓成也扩展,败也扩展,Firefox日益庞大的扩展库充斥着越来越多的低效能扩展,很多入门级别的程序员随便写了个扩展就可以通过审核加入官方扩展库,这类新手的扩展大部分都是没有考虑Performance的,运行效率极低,就像很多垃圾WordPress插件一样,极大地消耗了系统资源。所以,尽量做到:

  • 少安装扩展,暂时不会用到的扩展禁用
  • 使用知名的高效率的扩展

至于如何判断是不是高效率的就要靠用户自己使用后体验总结了。此外,保持扩展最新版也是很有必要的(新版的程序一般在效能改进上都有所作为)

笔者使用扩展情况:24启用,21禁用

3. 过多的插件是重要原因

插件是增强火狐功能的组件,以DLL文件的形式加载。将不常用的插件禁用,笔者仅保留了Flash插件和Java插件启用,支付宝插件在登录的时候才启用。

Firefox 插件

同样的,也要保持插件最新版,时常检查更新。

插件和扩展有很大不同,插件往往是被第三方软件强制安装进去的,完成第三方软件的功能,比如安装QQ之后。启动Firefox就会发现,多了好几个QQ Music/QQ2012之类的插件。我们如果不喜欢,可以禁用掉它们。那么如何删除Firefox插件呢?貌似没有删除插件的按钮。可以这样做:

地址栏输入:about:plugins,回车,可以看到当前启用的插件的DLL文件信息,

Firefox 插件信息

只有文件名称版本信息,没有具体路径,我们用Everything 搜索文件名即可找到,删除之,重启Firefox,插件随即删除了。不过一般不建议删除DLL文件,可能会造成一些功能失效。

  17Comments

  1. dpsnet   •  

    Memory Fox貌似有木马,会强制qq重新登录。

    • Jeriff Cheng   •     Author

      木马是没有的,呵呵,都在Firefox扩展库里放了这么久了,10几万用户了。
      你不要把对所用进程都优化内存 那个功能开启,只对Firefox优化内存就好了。 可能在开启对所有进程优化内存之后会和QQ的进程冲突

  2. PS笔刷吧   •  

    谷歌浏览器也存在同样问题啊···特别是网页开多的时候···最重要的瓶颈还是硬盘数据传输太慢了 几乎是所有硬件当中最短的一块板了···

    • Jeriff Cheng   •     Author

      +内存!内存大了就不怕了

  3. 韩佳伦   •  

    我倒是很少用这个浏览器
    其实也是因为现在的浏览器太多了

  4. 潜行者m   •  

    我后来又看了一下,火狐一般最高的时候250MB左右,我装了金山卫士这类软件,有释放内存的功能.
    点一下释放,就全没了..

  5. 潜行者m   •  

    哪个版本的啊?我用的很正常啊,刚刚查看了一下,只有25M.

  6. Neverland Zhang   •  

    其实FF内存占用还好啦,Chrome才恐怖,每次打开资源管理器,看到那么多chrome进程都为内存感到蛋疼~扩展/插件确实是个主要原因,能不用就尽量不用,或者创建多个profile,使用不同的插件/扩展配置。

Leave a Reply

Your email address will not be published. Required fields are marked *