Содержание
Разберемся почему желтый браузер съедает всю оперативную память…
Яндекс.Браузер относится к программам, которые потребляют существенное количество RAM. Для корректной работы желтого браузера требуется более одного гигабайта оперативной памяти. В противном случае не избежать лагов, тормозов и других сбоев ПО.
Следует отметить тот факт, что желтый браузер сам по себе не отличается проворностью и тормозит даже на добротных конфигурациях прямо «из коробки».
Причины по которым Яндекс.Браузер жрет много оперативной памяти:
- Дополнительные расширения, модули и плагины браузера — блокировщики рекламы, встроенный диспетчер задач и так далее;
- Чрезмерное количество открытых вкладок, кстати, закрепленные вкладки в Яндекс.Браузере загружаются автоматически, что также забирает существенное количество оперативной памяти;
- Особенности каждого конкретного сайта — тяжелые сайты могут тормозить желтый браузер;
- Работа браузера в фоне — например, снесли на панель и забыли закрыть;
- Загрузка фоновых вкладок.
Яндекс.Браузер пользуется большой популярностью у русскоязычных пользователей — часто задаваемый вопрос почему Яндекс.Браузер жрет много оперативной памяти действительно справедлив.
Если желтый браузер не хочет работать быстрее проще всего установить другой. В любых условиях быстрее будет Хром, чуть медленнее — Фаерфокс. Если рассматривать работу российского браузера с точки зрения быстродействия, то здесь все понятно — по сравнению с другими браузер, на первый взгляд, он самый неповоротливый
Скорость загрузки веб-страниц в одинаковых условиях может довольно сильно различаться в разных браузерах.
Казалось бы преимущество, определенно, у Хрома, но здесь стоит немного вникнуть в процесс работы ПО — загрузка страниц в желтом браузере действительно медленнее чем в Хроме, кроме этого открытие сразу нескольких вкладок сулит существенные тормоза Яндекс.Браузеру
Рассматривая работу с большой нагрузкой мы выяснили, что Яндекс.Браузер является самым эффективным с точки зрения быстродействия.
Сравнительная таблица нагрузки RAM при 12 открытых вкладках:
Браузер | среднее относительное значение RAM, Мб |
Опера | 2800 |
Гугл Хром | 2400 |
Фаерфокс | 2060 |
Яндекс.Браузер | 1970 |
Почему желтый браузер жрет много оперативной памяти мы выяснили. Каким же образом можно ускорить его?
Чтобы ускорить работу браузера Яндекса необходимо вовремя закрывать лишние вкладки, очищать кэш и историю загрузки, также не рекомендуется пользоваться блокировщиками рекламы — данные расширения часто замедляют работу компьютера, ограничивают функционал сайтов и нередко содержат в себе вредоносный код
Следует отметить, что браузер Яндекса, РІ отличие РѕС‚ РґСЂСѓРіРёС…, РїСЂРё закрытии полностью РЅРµ освобождает память — РѕРЅ РІРёСЃРёС‚ РІ фоновых процессах Рё может потреблять дополнительные 2 РњР‘ памяти, Р° голосовой ассистент Яндекса забирает еще 3 РњР‘. Рто как раз ответ РЅР° РІРѕРїСЂРѕСЃ почему Яндекс.Браузер жрет РјРЅРѕРіРѕ оперативной памяти — достаточно отключить выше указанные процессы РІ диспетчере задач Рё работа компьютера заметно ускорится…

Hibernate в Яндекс.Браузере
Многие читатели Хабра уже могли догадаться, что очистить память, но сохранить состояние вкладки вполне возможно, если предварительно выгрузить состояние на жесткий диск. Если по клику восстановить вкладку с жесткого диска, то пользователь не заметит ничего. Наша команда участвует в разработке проекта Chromium, куда отправляет значительные оптимизирующие правки и новые возможности. Ещё в 2015 году мы обсуждали с коллегами из проекта идею сохранения состояния вкладок на жесткий диск и даже успели внести ряд доработок, но это направление в Chromium решили заморозить. Мы решили иначе и продолжили разработку в Яндекс.Браузере. На это ушло больше времени, чем планировали, но это того стоило. Чуть ниже мы расскажем о технической начинке технологии Hibernate, а пока начнем с общей логики. Несколько раз в минуту Яндекс.Браузер проверяет количество доступной памяти, и если ее меньше, чем пороговое значение в 600 мегабайт, то в дело вступает Hibernate. Всё начинается с того, что Браузер находит наиболее старую (по использованию) фоновую вкладку. Кстати, в среднем у пользователя открыто 7 вкладок, но у 5% их более 30. Выгружать из памяти любую старую вкладку нельзя – можно сломать что-то действительно важное. Например, воспроизведение музыки или общение в веб-мессенджере. Таких исключений сейчас 28. Если вкладка не подошла хотя бы по одному из них, то Браузер переходит к проверке следующей. Если найдена вкладка, которая удовлетворяет требованиям, то начинается процесс ее сохранения.
Сохранение и восстановление вкладок в Hibernate
Любую страницу можно условно разделить на две большие части, связанные с движками V8 (JS) и Blink (HTML/DOM). Рассмотрим небольшой пример:
У нас есть некоторое DOM-дерево и небольшой скрипт, который просто добавляет div в body. С точки зрения Blink, эта страница выглядит примерно так: Давайте посмотрим на связь между Blink и V8 на примере HTMLBodyElement:
Можно заметить, что Blink и V8 имеют разные представления одних и тех же сущностей и тесно связаны друг с другом. Так мы пришли к первоначальной идее – сохранять полное состояние V8, а для Blink хранить лишь HTML-атрибуты в виде текста. Но это было ошибкой, потому что мы потеряли те состояния DOM-объектов, которые хранились не в атрибутах. А еще потеряли состояния, которые хранились не в DOM. Решением этой проблемы было полное сохранение Blink. Но не всё так просто. Для начала нужно собрать информацию об объектах Blink. Поэтому в момент сохранения V8 мы не только останавливаем JS и делаем его слепок, но и собираем в памяти ссылки на DOM-объекты и прочие вспомогательные объекты, доступные для JS. Мы также проходим по всем объектам, до которых можно дотянуться из объектов Document – корневых элементов каждого фрейма страницы. Так мы собираем информацию обо всем, что важно сохранить. Остается самое сложное – научиться сохранять. Если посчитать все классы Blink, которые представляют DOM-дерево, а также разные HTML5 API (например, canvas, media, geolocation), то получим тысячи классов. Практически невозможно написать руками логику сохранения всех классов. Но хуже всего то, что даже если так сделать, то это будет невозможно поддерживать, потому что мы регулярно подливаем новые версии Chromium, которые вносят неожиданные изменения в любой класс. Наш Браузер для всех платформ собирается с помощью clang. Чтобы решить задачу сохранения классов Blink, мы создали плагин для clang, который строит AST (абстрактное синтаксическое дерево) для классов. Например, вот этот код:
class Bar : public foo_namespace::Foo { struct BarInternal { int int_field_; float float_field_; } bar_internal_field_; std::string string_field_; };
Превращается в такой XML:
<class><name>bar_namespace::Bar::BarInternal</name> false false <decl>srh <base><fields><field>name>int_field_ <type><builtin> 0 <name>int</name></builtin></type></field><field><name>float_field_</name><type><builtin> 0 <name>float</name></builtin></type></field></fields></decl></class><class><name>bar_namespace::Bar false false <decl>src/bar.h <base><class>foo_namespace::Foos_name> <fields><field><name>bar_internal_field_</name><type><class> 0 <name>bar_namespace::Bar::BarInternal</name></class></type></field><field><name>string_field_</name><type><class> 0 <name>std::string</name></class></type></field></fields></class></decl></name></class>
Дальше другие написанные нами скрипты генерируют из этой информации код на C++ для сохранения и восстановления классов, который и попадает в сборку Яндекс.Браузера.
void serialize_bar_namespace_Bar_BarInternal( WriteVisitor* writer, Bar::BarInternal* instance) { writer->WriteBuiltin<size>(instance->int_vector_field_.size()); for (auto& item : instanc_vector_field_) { writer->WriteBuiltin<int>(item); } writer->WriteBuiltin<float>(instance->float_field_); } verialize_bar_namespace_Bar(WriteVisitor*, Bar* instance) { serialize_foo_namespace_Foo(writer, instance); serialize_bar_namespace_Bar_BarInternal( writer, &instance->bar_internal_field_); writer->WriteString(instance->string_field_); }</float></int></size>
Всего у нас генерируется код примерно для 1000 классов Blink. Например, мы научились сохранять такой сложный класс как Canvas. В него можно рисовать из JS-кода, задавать множество свойств, устанавливать параметры кисточек для рисования и так далее. Мы сохраняем все эти свойства, параметры и саму картинку. После успешного шифрования и сохранения всех данных на жесткий диск процесс вкладки выгружается из памяти до тех пор, пока пользователь не вернется на эту вкладку. В интерфейсе, как и раньше, она никак не выделяется. Восстановление вкладки происходит не мгновенно, но существенно быстрее, чем при загрузке из сети. Тем не менее мы пошли на хитрый ход, чтобы не раздражать пользователей вспышками белого экрана. Мы показываем скриншот страницы, созданный на этапе сохранения. Это помогает сгладить переход. В остальном процесс восстановления похож на обычную навигацию с той лишь разницей, что Браузер не делает сетевой запрос. Он воссоздает структуру фреймов и DOM-деревья в них, а затем подменяет состояние V8. Записали видео с наглядной демонстрацией того, как Hibernate выгружает и восстанавливает по клику вкладки с сохранением прогресса в JS-игре, введенного в формах текста и положения видео:
Итоги
В ближайшее время технология Hibernate станет доступна всем пользователям Яндекс.Браузера для Windows. Мы также планируем начать экспериментировать с ней в альфа-версии для Android. С ее помощью Браузер экономит память более эффективно, чем раньше. К примеру, у пользователей с большим числом открытых вкладок Hibernate в среднем экономит более 330 мегабайт памяти и не теряет при этом информацию во вкладках, которая остается доступна в один клик при любом состоянии сети. Мы понимаем, что вебмастерам было бы полезно учитывать выгрузку фоновых вкладок, поэтому планируем поддержать Page Lifecycle API. Hibernate – не единственное наше решение, направленное на экономию ресурсов. Мы не первый год работаем над тем, чтобы Браузер адаптировался под имеющиеся в системе ресурсы. К примеру, на слабых устройствах Браузер переходит в упрощенный режим, а при отключении ноутбука от источника питания – снижает энергопотребление. Экономия ресурсов – большая и сложная история, к которой мы еще обязательно вернемся на Хабре.
Причины повышенного потребления оперативной памяти у браузера
Даже на не самых производительных компьютерам могут на приемлемом уровне работать браузеры и другие запущенные программы одновременно. Для этого достаточно разобраться в причинах высокого потребления оперативной памяти и избегать ситуаций, которые им способствуют.
Причина 1: Разрядность браузера
64-битные программы всегда больше требовательны к системе, а значит и оперативной памяти им надо больше. Такое утверждение справедливо и для браузеров. Если в ПК оперативной памяти установлено до 4 ГБ, можно смело выбрать 32-битный браузер в качестве основного или запасного, запуская его лишь при необходимости. Проблема в том, что разработчики хоть и предлагают 32-битный вариант, но делают это неочевидно: скачать его можно, открыв полный список загрузочных файлов, на главной странице же предлагается лишь 64-bit.
Google Chrome:
- Откройте главную страницу сайта, опуститесь вниз, в блоке «Продукты» кликните «Для других платформ».
В окне выберите 32-разрядную версию.</li></ol>
Mozilla Firefox:
- Перейдите на главную страницу (обязательно должна быть версия сайта на английском языке) и опуститесь вниз, нажав по ссылке «Download Firefox».
На новой странице найдите ссылку «Advanced install options & other platforms», если хотите скачать версию на английском.
Выберите «Windows 32-bit» и скачайте.</li>
Если нужен другой язык, жмите на ссылку «Download in other language».
Найдите в списке свой язык и кликните на иконку с надписью «32».</li></ol>
Opera:
- Откройте главную страницу сайта и нажмите по кнопке «ЗАГРУЗИТЬ OPERA» в правом верхнем углу.
Прокрутите страницу в самый низ и в блоке «Архивные версии Opera» кликните по ссылке «Найти в архиве FTP».</li>
Выберите последнюю доступную версию — она находится в конце списка.</li>
Из операционных систем укажите «win».</li>
Скачайте файл «Setup.exe», не имеющий приписки «x64».</li></ol>
Vivaldi:
- Перейдите на главную страницу, опуститесь вниз страницы и в блоке «Загрузить» нажмите по «Vivaldi для Windows».
Прокрутите страницу ниже и в разделе «Загрузить Vivaldi для других операционных систем» выберите 32-bit, исходя из версии Windows.</li></ol>
Браузер можно установить поверх уже существующей 64-битной или с предварительным удалением прошлой версии. Яндекс.Браузер не предоставляет 32-битной версии. Веб-обозреватели, предназначенные специально для слабых компьютеров, такие как Pale Moon или SlimJet, не ограничивают в выборе, поэтому в целях экономии нескольких мегабайт можно скачать 32-битную версию.
Читайте также: Какой выбрать браузер для слабого компьютера
Причина 2: Установленные расширения
Довольно очевидная причина, тем не менее требующая упоминания. Сейчас все браузеры предлагают большое количество надстроек, и многие из них действительно могут быть полезны. Однако каждое такое расширение может требовать как 30 МБ ОЗУ, так и более 120 МБ. Как вы понимаете, дело не только в количестве расширений, но и в их предназначении, функциональности, сложности.
Условные блокировщики рекламы — яркое тому доказательство. Всеми любимые AdBlock или Adblock Plus занимают куда больше оперативной памяти при активной работе, чем тот же uBlock Origin. Проверить, сколько ресурсов требует то или иное расширение, можно через Диспетчер задач, встроенный в браузер. Есть он практически у каждого обозревателя:
Chromium — «Меню» > «Дополнительные инструменты» > «Диспетчер задач» (либо нажмите сочетание клавиш Shift + Esc).
Firefox — «Меню» > «Еще» > «Диспетчер задач» (либо введите about:performance
в адресной строке и нажмите Enter).
При обнаружении какого-либо прожорливого модуля поищите ему более скромный аналог, отключите или полностью удалите.
Причина 3: Темы оформления
В целом этот пункт вытекает из второго, однако не все установившие тему оформления вспоминают о том, что она тоже относится к расширениям. Если вы хотите добиться максимальной производительности, отключите или удалите тему, придав программе дефолтный внешний вид.
Причина 4: Тип открытых вкладок
В этот пункт можно внести сразу несколько моментов, которые так или иначе сказываются на количестве потребления ОЗУ:
- Многие пользователи используют функцию закрепления вкладок, однако они тоже требуют ресурсов, как и все остальные. Более того, поскольку они считаются важными, при запуске браузера они прогружаются в обязательном порядке. По возможности их стоит заменить закладками, открывая только тогда, когда нужно.
- Важно помнить и о том что именно вы делаете в браузере. Сейчас многие сайты не просто отображают текст и картинки, а еще показывают видео в высоком качестве, запускают аудиоплееры и другие полноценные приложения, которые, естественно, требуют гораздо более ресурсов, чем обычный сайт с буквами и символами.
- Не забывайте, что браузеры используют прогрузку прокручиваемых страниц заранее. Например, лента ВК не имеет кнопки перехода на другие страницы, поэтому следующая страница грузится еще тогда, когда вы находитесь на предыдущей, что требует оперативной памяти. К тому же, чем дальше вниз вы уходите, тем больший участок страницы помещается в ОЗУ. Из-за этого появляются тормоза даже в одной вкладке.
Каждая из этих особенностей возвращает пользователя к «Причине 2», а именно к рекомендации отслеживать встроенный в веб-обозреватель Диспетчер задач — вполне возможно, что много памяти занимает 1-2 конкретных страниц, что уже не относится к пользователю и не является виной браузера.
Причина 5: Сайты с JavaScript
Многие сайты используют для своей работы скриптовый язык JavaScript. Для того чтобы части страницы интернета на JS отображались корректно, требуется интерпретация его кода (построчный анализ с дальнейшим выполнением). Это не только замедляет загрузку, но и отнимает оперативную память для обработки.
Подключаемые библиотеки широко используются разработчиками сайтов, причем они могут быть довольно большими по объему и загружаются полностью (попадая, конечно же, в оперативную память), даже если функциональность самого сайта этого не требует.
Бороться с этим можно как радикально — отключением JavaScript в настройках браузера, так и более мягко — используя расширения по типу NoScript для Firefox и ScriptBlock для Chromium, блокирующие загрузку и работу JS, Java, Flash, но дающие возможность разрешать их отображение выборочно. Ниже вы видите пример одного и того же сайта сперва с отключенным блокировщиком скриптов, а потом с включенным. Чем чище страница, тем меньше она нагружает ПК.
Причина 6: Непрерывная работа браузера
Этот пункт следует из предыдущего, однако лишь на определенную его часть. Проблема JavaScript заключается и в том, что после завершения использования определенного скрипта инструмент управления памятью в JS под названием Garbage Collection функционирует не очень эффективно. Это не очень хорошо сказывается на занятом объеме ОЗУ уже в короткий промежуток времени, не говоря уже о длительном времени запуска браузера. Есть и другие параметры, отрицательно сказывающиеся на ОЗУ при длительной беспрерывной работе браузера, но останавливаться на их объяснении мы не будем.
Проверить это проще всего, посещая несколько сайтов и измерив количество занятой оперативной памяти, а затем перезапустив браузер. Таким образом можно освободить 50-200 МБ в рамках сессии продолжительностью несколько часов. Если не перезапускать браузер сутки и более, количество отнятой уже впустую памяти может достигать 1 ГБ и более.
Как еще сэкономить потребление оперативной памяти
Выше мы перечислили не только 6 причин, которые сказываются на количестве свободной оперативной памяти, но и рассказали, как их исправить. Однако не всегда этих советов хватает и требуются дополнительные варианты решения рассматриваемого вопроса.
Использование браузера, выгружающего фоновые вкладки
Многие популярные браузеры сейчас довольно прожорливы, и как мы уже поняли, виной этому далеко не всегда движок браузера и пользовательские действия. Сами страницы нередко перегружены контентом, и оставаясь в фоне, продолжают потреблять ресурсы ОЗУ. Для их выгрузки можно воспользоваться браузерами, поддерживающими эту функцию.
К примеру, подобное есть у Vivaldi — достаточно нажать ПКМ по вкладке и выбрать пункт «Выгрузить фоновые вкладки», после чего все они кроме активных будут выгружены из оперативной памяти.
В SlimJet функция автовыгрузки вкладок настраиваемая — вам нужно указать количество простаивающих вкладок и время, по истечении которого браузер выгрузит их из ОЗУ. Подробнее об этом написано в нашем обзоре браузера по этой ссылке.
Яндекс.Браузер с недавних пор добавил функцию Hibernate, которая подобно одноименной функции в Windows выгружает данные из оперативной памяти на жесткий диск. В данной ситуации вкладки, которые на протяжении определенного времени не использовались, переходят в режим гибернации, освобождая ОЗУ. При повторном обращении к выгруженной вкладке ее копия берется с накопителя, сохраняя ее сеанс, например, набор текста. Сохранение сеанса — важное преимущество перед принудительной выгрузкой вкладки из оперативной памяти, где весь прогресс сайта сбрасывается.
Подробнее: Технология Hibernate в Яндекс.Браузере
Помимо этого у Я.Браузера есть функция интеллектуальной загрузки страниц при старте программы: когда вы запускаете обозреватель с последним сохраненным сеансом, загружаются и попадают в ОЗУ те вкладки, которые были закреплены, и обычные часто использованные в прошлом сеансе. Менее популярные вкладки загрузятся только при обращении к ним.
Подробнее: Интеллектуальная загрузка вкладок в Яндекс.Браузере
Установка расширения для управления вкладками
Когда не удается побороть прожорливость браузера, но пользоваться совсем уж легкими и непопулярными браузерами тоже не хочется, можно установить расширение, которое управляет активностью фоновых вкладок. Аналогичное реализовано в браузерах, о которых речь шла чуть выше, но если они вам по каким-то причинам не подходят, предлагается сделать выбор в пользу стороннего ПО.
В раках этой статьи мы не будем расписывать инструкцию по использованию таких расширений, поскольку разобраться в их работе сможет даже начинающий пользователь. Кроме того, оставим выбор за вами, перечислив наиболее популярные программные решения:
- OneTab — при нажатии на кнопку расширения все открытые вкладки закрываются, остается лишь одна — та, через которую вы будете вручную повторно открывать каждый сайт по мере необходимости. Это легкий способ быстро освободить ОЗУ, не теряя текущую сессию. Скачать из Google Webstore | Firefox Add-ons
- The Great Suspender — в отличие от OneTab вкладки здесь не помещаются в одну, а просто выгружаются из оперативной памяти. Это можно сделать вручную, кликнув по кнопке расширения, или настроить таймер, по истечении которого вкладки автоматически выгрузятся из ОЗУ. При этом они продолжат находиться в списке открытых вкладок, но при последующем обращении к ним перезагрузятся, снова начав отнимать ресурсы ПК. Скачать из Google Webstore | Firefox Add-ons (расширение Tab Suspender, базирующееся на The Great Suspender)
- TabMemFree — автоматически выгружает неиспользуемые фоновые вкладки, но если те были закреплены, расширение обходит их стороной. Такой вариант подходит для фоновых плееров или открытых текстовых редакторов онлайн. Скачать из Google Webstore
- Tab Wrangler — функциональное расширение, собравшее все лучшее из предыдущих. Здесь пользователь может настроить не только время, после которого открытые вкладки выгрузятся из памяти, но и их количество, при котором правило начнет действовать. Если конкретные страницы или страницы определенного сайта не нужно обрабатывать, можно занести их в «белый список». Скачать из Google Webstore | Firefox Add-ons
Настройка браузера
В стандартных настройках практически нет параметров, которые могли бы повлиять на потребление ОЗУ браузером. Тем не менее по одной базовой возможности все же присутствует.
Для Chromium:
Возможности тонкой настройки у браузеров на Chromium ограниченные, но набор функций зависит от конкретного веб-обозревателя. В большинстве случаев из полезного у них вы можете отключить только предендер. Параметр находится в «Настройки» > «Конфиденциальность и безопасность» > «Использовать подсказки для ускорения загрузки страниц».
Для Firefox:
Перейдите в «Настройки» > «Общие». Отыщите блок «Производительность» и поставьте либо снимите галочку с пункта «Использовать рекомендуемые настройки производительности». Если вы снимете галочку, откроются дополнительные 2 пункта по настройке производительности. Вы можете отключить аппаратное ускорение, если видеокарта не очень корректно обрабатывает данные, и/или настроить «Максимальное число процессов контента», напрямую влияющее на ОЗУ. Более детально об этой настройке написано на русскоязычной странице поддержки Mozilla, куда вы можете попасть, кликнув на ссылку «Подробнее».
Для отключения ускорения загрузки страниц наподобие того, что было описано выше для Chromium, потребуется редактировать экспериментальные настройки. Об этом написано ниже.
К слову, в Firefox есть возможность минизмизации потребления оперативной памяти, но только в рамках одного сеанса. Это одноразовое решение, которое можно использовать в условиях сильного потребления ресурсов ОЗУ. Впишите в адресную строку about:memory
, найдите и кликните по кнопке «Minimize memory usage».
Использование экспериментальных настроек
В браузерах на движке Chromium (и его форке Blink), а также в тех, что используют движок Firefox, есть страницы со скрытыми настройками, которые могут повлиять на количество выделяемой оперативной памяти. Сразу же стоит отметить, что этот способ является больше вспомогательным, поэтому не стоит на него полностью полагаться.
Для Chromium:
Впишите в адресную строку chrome://flags
, пользователям Яндекс.Браузера нужно вписать browser://flags
и нажать Enter.
Вставьте в поисковое поле следующий пункт и нажмите на Enter:
#automatic-tab-discarding
— автоматическая выгрузка вкладок из ОЗУ, если в системе остается мало свободной оперативной памяти. При повторном обращении к выгруженной вкладке та будет сперва перезагружена. Задайте ему значение «Enabled» и перезапустите браузер.
Кстати, перейдя в chrome://discards
(либо browser://discards
), можно просматривать список открытых вкладок в порядке их приоритетности, определенном браузером, и управлять их активностью.
Для Firefox возможностей больше:
Впишите в адресное поле about:config
и нажмите «Я принимаю на себя риск!».
В поисковую строчку вставляйте те команды, которые вы хотите изменить. Каждая из них напрямую или косвенно влияет на ОЗУ. Чтобы сменить значение, жмите по параметру ЛКМ 2 раза или ПКМ > «Переключить»:
-
browser.sessionhistory.max_total_viewers
— регулирует количество оперативной памяти, которая выделяется на посещаемые страницы. По умолчанию используется для быстрого отображения страницы при возвращении к ней кнопкой «Назад» вместо повторной загрузки. В целях экономии ресурсов этот параметр следует изменить. Двойным кликом ЛКМ задайте ему значение «0».
config.trim_on_minimize
— выгружает браузер в файл подкачки, пока тот находится в свернутом состоянии.
По умолчанию команды нет в списке, поэтому создадим ее сами. Для этого кликните по пустому месту ПКМ, выберите «Создать» > «Строка».
Введите название команды, указанное выше, а в поле «Значение» впишите «true».</li>
Читайте также: Как изменить размер файла подкачки в Windows XP / Windows 7 / Windows 8 / Windows 10Определение оптимального размера файла подкачки в WindowsНужен ли файл подкачки на SSD
browser.cache.memory.enable
— разрешает или запрещает кэшу храниться в оперативной памяти в пределах сеанса. Не рекомендуется отключать, так как это снизит скорость загрузки страниц, поскольку кэш будет храниться на жестком диске, значительно уступающем в скорости ОЗУ. Значение «true» (по умолчанию) разрешает, если хотите отключить — задайте значение «false». Для работы этой настройки обязательно активируйте следующую:
browser.cache.disk.enable
— помещает кэш браузера на жесткий диск. Значение «true» разрешает хранение кэша и позволяет предыдущей настройке корректно функционировать.
Вы можете настроить и другие команды browser.cache., например, указав место, куда будет сохраняться кэш на жестком диске вместо оперативной памяти и т.д.
</li>browser.sessionstore.restore_pinned_tabs_on_demand
— установите значение «true», чтобы отключить возможность загрузки закрепленных вкладок при запуске браузера. Они не будут загружены в фоновом режиме и потреблять много оперативной памяти до тех пор, пока вы перейдите к ним.</li>network.prefetch-next
— отключает предварительную загрузку страниц. Это тот самый пререндер, анализирующий ссылки и предугадывающий, куда вы перейдете. Задайте ему значение «false», чтобы отключить данную функцию.</li></ul>
Настройку экспериментальных функций можно было и продолжить, поскольку у Firefox есть множество других параметров, но они влияют на ОЗУ гораздо меньше, чем перечисленные выше. После изменения параметров не забудьте перезапустить веб-обозреватель.
Мы разобрали не только причины высокого потребления браузером оперативной памяти, но и разные по легкости и эффективности способы снизить расход ресурсов ОЗУ.


Помогла ли вам эта статья?
- http://mirdostupa.ru/pochemu-yandeks-brauzer-zhret-mnogo-operativnoj-pamyati-chto-delat/
- https://habr.com/post/423507/
- https://lumpics.ru/why-the-browser-uses-so-much-ram/