Posts Tagged ‘ память

Как спасти Firefox от Flash

February 22, 10 by TracKer

Flash, или Флеш. Последнее время мне кажется, что интернет уже переполнен этим Флешем. Практически на любом сайте есть Флеш. Флеш в виде плееров, Флеш в виде баннеров, Флеш в виде приложений, игр, утилит, и даже полноценных stand-alone программ. Как же я был удивлен,  когда узнал, что в Apple iPad нет Флеш. Как же так, настолько современное устройство и не поддерживает настолько распространенную технологию? Причин может быть много, Стив Джобс аргументировал это наличием большого количества багов, приводящих к утечкам памяти и чрезмерной загрузке процессора. Мне кажется, что общеизвестный аппетит Flash на память и процессор плюс сайты перегруженные баннерами и прочей лабудой могут превратить iPad в улитку. Да и не только iPad, а любой современный компьютер. Наверно каждый рано или поздно сталкивается с этой проблемой.

Раньше я грешил на Firefox, так как это основной браузер, которым я пользуюсь. Обычно у меня открыто 20 и больше вкладок. Я даже пробовал всяческие комбинации настроек (тут). Однако их эффект был временным. Через какое-то время прожорливость восстанавливалась, и становились заметны довольно популярные симптомы: приложение переставало отвечать и безудержно кушало память.

И вот наконец-то было найдено решение этой проблемы!

Flashblock – это панацея от Флеш. Панацея потому, что это дополнение просто убирает весь Флеш со страницы, заменяя его кнопкой, на которую можно при желании нажать и нужный вам ролик просто подгрузится. Пользуюсь им уже неделю и заметил, что даже при открытых 20 вкладках  скорость работы Firefox такая же как и при открытой одной.

Я провел небольшой тест. Установил VMWare (trial) с Windows 7 (тоже trial). В настройках виртуальной машины установил один процессор с одним ядром, и 1024 MB памяти. Далее был установлен Firefox. Далее было открыто несколько сайтов, содержащих на своих страницах некоторое количество флеш-роликов. В качестве активной страницы была выбрана самая «зафлешенная» страница. И вот какие результаты получились:

Сайты с помощью которых проводился тест называть не буду, но скажу что это популярные SEO (и не только) блоги, а также несколько СМИ. :) Да, как это не печально, но у блогеров самые «тяжелые» страницы.

Конечно, всех проблем это дополнение не решает, остается еще как минимум JavaScript, который в неумелых руках также приводит к печальным последствиям. Однако, как мне кажется, он не настолько влиятелен на загрузку процессора и памяти как Flash.

Постовой.

Все чаще и чаще слышу, что Drupal это лучшая система управления сайтом. Но как и лучшая, так и сложная, поэтому работу с ней лучше доверить профессионалам.

Прожорливый Firefox и диета для него

November 07, 08 by TracKer

Уже давно маюсь с проблемой прожорливости Firefox к памяти. Иногда даже доходило до маразма, Firefox жрал практически гигабайт памяти. Страниц было открыто где-то 10-15. Вот пара скринов:

При этом загрузка процессора шла на 50% (если бы не Hyper-Threading, были бы все 100%). Вот как это выглядело на самом пике:

А вот так когда процесс я прибил :)

В поисках решения я обнаружил что это довольно частая проблема которая тянется еще с 2005 года, ну не может же Memory Leak быть не исправленым уже три года. В общем ближе к теме решения :)

Первое, что нужно запомнить это то, что Firefox не любит Hibernate (также известен как Спящий режим), если его (Firefox) не закрыть перед уходом в Спящий режим, при следующей загрузке он начинает очень аппетитно кушать память и процессорное время, при этом “засыпая” и не реагируя на внешние воздействия (клики и т.д.).

Второе, необходимо зайти на страинцу “about:config” и произвести следующие действия:

  • Уменьшить значение переменной browser.sessionhistory.max_entries с 50 до, например, 10. Эта переменная отвечает за количество страниц в кеше, на которое можно вернуться без перечитывания их из Интернета (в каждом табе);
  • Установить browser.sessionhistory.max_total_viewers в 0. Эта переменная отвечает за количество уже “распарсенных” страниц из предыдущего пункта, хранящихся в памяти. Если нужной страницы в памяти нет, она читается из кеша на диске и парсится заново. Поскольку такое действие выполняется редко, держать такие страницы в памяти не имеет смысла;
  • Создать новую переменную типа bool, config.trim_on_minimize, и установить её в true. После этого Firefox будет освобождать неиспользуемую память при минимизации окна;
  • Установить network.prefetch-next в false. При этом Firefox не будет никогда читать заранее страницы, ссылки на которые есть на текущей странице.

Также такие тормоза возможны из-за старой версии Google Bar‘а, однако в этом я не уверен, но все таки обновил его до последней бэты.

Ну и конечно выключить ненужные плагины, у меня их было два.

В общем-то все. Есть еще пара пунктов которые я не применял (их можно прочитать по ссылке на источник внизу поста), но и без них все работает. Уже два дня Firefox не кушает больше 150 мегабайт. :)

Часть информации взята отсюда.