Firefox кэш в оперативной памяти

Конечно, смысла ускорять кэш браузера нет, если скорость вашего интернет-соединения оставляет желать лучшего. Но сейчас сети быстры, и зачастую узким местом в производительности вашего браузера становится именно чтение, а особенно запись на жесткий диск. Эту проблему можно решить поместив кэш браузера в оперативную память, операции чтения/записи с которой производятся в сотни раз быстрее чем с жестким диском, что практически мгновенно. И прирост в производительности будет заметно быстрее в особенности при повторном обращении к веб-страничкам, поскольку большая часть данных формирующих эту сраничку будут грузиться не из сети, и не с жесткого диска, а из оперативной памяти.

Сохраняем кэш

Здесь может возникнуть другая проблема — при внезапном отключении питания, кэш будет неминуемо утерян. Посему, если вы хотите чтобы кэш сохранялся, нужно будет всякий раз при отключении питания компьютера сохранять содержимое кэша на жесткий диск, и подгружать его при старте. В определенных случаях такая процедура может быть оправданной засчет прироста скорости загрузки веб-страниц, тем более если машина выключается редко.

Как поместить кэш браузера в оперативную память

Для начала, нужно выделить область нужного размера в оперативной памяти, чтобы с ней можно было работать аки с обычным жестким диском. Так называемый RAM-drive, или же RAMdisk. С той лишь разницей что файлы в этот «диск» будут записываться и считываться из него мгновенно.

Linux

В операционных системах linux такая операция производится стандартными средствами системы, безо всяческих ухищрений. Файловая система в оперативной памяти созидается и монтируется в любое удобное место одной командой. К примеру вот такой:
mount tmpfs /точка_монтирования -t tmpfs -o size=300m.
Здесь — tmpfs не что иное как тип файловой системы для оперативной памяти. А опция size размер, в данном случае было учреждено под раздел в оперативной памяти 300 мегабайт, зависит от количества памяти имеющейся в наличии и от того что вы собрались в этот «диск» складировать. В нашем случае это кэш, для которого 300 Мб достаточно чуть более чем.
Далее, все что нужно сделать это указать браузеру хранить кэш в этом самом месте /точка_монтирования, что в разных браузерах делается немного по-разному, но об этом чуть позже.

Windows и утилита RAMdisk

А сначала посмотрим как подобный выкрутас c сотворением супербыстрого «жесткого диска» в самое мозгу машины можно устроить в этих ваших виндовсах.

Для этого нам понадобятся… костыли конечно же, как иначе) Ну или инвалидная коляска, а может и протез, уж я и не знаю какая из метафор больше подойдет. А при опущении оных, метафор то бишь, это со всей решительностью можно обозвать то ли драйвером, то ли утилитой, но есть мнение, что это и то и другое в одном стакане. Именуется эта софтина RAMdisk (как непредсказуемо, правда?), имеет несколько различных версий, скажем enterprise, plus, заточена под разные архитектуры (версии под 32 и 64 битные системы) И живет эта полезная штуковина в сети, к примеру на другом конце ссылочки http://ramdisk.nm.ru/ramdiskent-rus.htm, откуда ее можно невозбранно заполучить.

Читайте также:  Что чаще ищут в интернете яндекс

Вообще, если погуглить, то сыщется еще много мест, где ее можно обрести, но местного автора в закладках значилась именно эта страница, уж и не помню с каких незапамятных времен. Именно этот линк видимо потому, что там же можно кроме самого драйвера можно поиметь к себе в экран подробнейшую инструкцию как этой радостью пользоваться, и даже в картинках. Что местного же автора не может не радовать, поскольку избавляет оного от бесполезного набивания лишних двух-трех килобукв для данного документа.

Единственное что еще можно заметить по поводу этой программы, то на сайте обозначено что она писана под все версии windows окромя самой распоследней, под сакральным нумером 7. Ничего сказать по этому поводу не имею, ибо не пробовал заниматься таким шаманством под седьмеркой. Но думается, что не указано оно там лишь потому, что на момент написания того документа, windows seven еще не существовало, и утилита под ней функционирующая при необходимости в сети отыщется.

Отдаем команду браузеру

Итак. Память порезана и заготовлена, теперь можно и объявлять браузеру что отныне он будет писать свой кэш не туда куда было сказано ему разработчиками, а туда куда заблагорассудилось нам. То бишь в свежесотворенную файловую систему в оперативной памяти.

Firefox

Для того чтобы этот ваш firefox поселил свой кэш там где вы захотите, надо пойти в его конфиг и создать там нужную настройку с нужным значением. В адресной строке набираем about:config, видим кучу всяких строчек. Но оне нам не подходят, мы конечно же запишем свою туда, ткнув правой кнопочкой прям в странице с настройками и выбрав из менюшки «создать>строка», назовем ее «browser.cache.disk.parent_directory”, а в значении укажем путь, где у нас будет жить кэш. То есть в случае с windows это будет ваш свежесозданный «диск» в оперативке — к примеру какой нибудь «R:cache», а в линуксах допустим «/home/user/точка_монтирования/cache». Перезапускаем браузер и вуаля.

Opera

В опере все попроще, там разработчики уже озаботились и нам не нужно самостоятельно создавать строку с настройкой, а нужно лишь сменить значение. Значит как водится, в адресной строке «opera:config», изыскиваем опцию «Cache Directory4» и учреждаем ее значением нашу сверхбыструю файловую систему. И начинаем чувствовать разницу в скорости загрузки страничек. А может и не начинаем, тут кому как свезет) Ну вот собстенно и все.

Как это делается в хроме — по аналогии, при желании разыщется. То же самое и в прочих этих ваших ИнтернетЭксплорерах.

Другие варианты использования данной схемы

Кстати говоря, файловая система в оперативной памяти это очень полезная штука не только для кэша браузера, можно найти сотню куда более интересных и полезных применений. Ну например посадить туда кэш прокси-сервера для внутренней локальной сети, как думаете — юзеры ощутят?) Или запустить оттуда особо хрустящую жестким диском игрушку, при наличии достаточного количества оперативной памяти, тоже может стать неплохой идеей, а?

Читайте также:  Int min int max
Admin

IT-cпециалист с высшим техническим образованием и 8-летним опытом системного администрирования. Подробней об авторе и контакты. Даю бесплатные консультации по информационным технологиям, работе компьютеров и других устройств, программ, сервисов и сайтов в интернете. Если вы не нашли нужную информацию, то задайте свой вопрос!

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

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

  • Введите about:config в адресную строку.
  • В поле Фильтр введите browser.cache.
  • Двойным щелчком измените параметр browser.cache.disk.enable на false.
  • Двойным щелчком установите параметр browser.cache.memory.enable в true.
  • Создайте новый параметр (Правый клик > Создать > Целое > введите browser.cache.memory.capacity > 100000 > OK). Число 100 000 — это размер памяти, выделяемой под кэш, вы можете поэкспериментировать с этим числом. А если вы введете -1, то Firefox будет сам динамически изменять этот параметр в зависимости от количества оперативной памяти.
  • Перезапустите браузер.

Мои личные впечатления от применения этих настроек очень положительные. Браузер стал ощутимо быстрее, а работа комфортнее. Впрочем, я не исключаю, что это может быть и просто эффект плацебо. 🙂

В любом случае, рекомендую попробовать описанные настройки, и поделиться с нами впечатлениями в комментариях.

Долго гуглил и перепробовал разные инструкции по размещению кэша и профиля на RAM диске. В итоге установил profile-sync-daemon, но он только профиль синхронизирует между ОЗУ и жестким диском, а кэш нет. Тогда я решил отключить кэш совсем. В about:config изменил следующие настройки:

но это не помогло и Firefox по-прежнему создавал папку

/.cache/mozilla/ с временными файлами.
Тогда я решил попробовать создать отдельный RAM диск и переместить туда кэш.
mkdir

/RAM-drive-tmpfs
И добавил в конец файла /etc/fstab строку:

Все успешно и папка работает, но кэш теперь находится частично в

/RAM-drive-tmpfs а частично в

/.cache/mozilla/
Также пробовал параметр browser.cache.disk.parent_directory в about:config
но ничего не вышло.
Система Ubuntu 18.04 LTS (Bionic Beaver).
Прошу помощи у специалистов по Firefox.

  • Вопрос задан более года назад
  • 1090 просмотров

простите. я не совсем понял — вы смогли смонтировать типичные пути к профилю на RAM -диск?
если да, то в profiles.ini (для любой системы) стоит откорректировать:

тогда профиль содержит кеш в общей свалке папок

ps если конкретно линукс — могу порыться в архивах и поискать скрипт/темплейт для профилей (там тоже кеш в итоге оказывался с общей папке профиля)

Читайте также:  Самые популярные детские компьютерные игры

pps profiles.ini/IsRelative=0 требует полной спецификации пути к профилю, это важно

ppps ну и это еще вопрос — только кеши выносить в РАМ? или весь профиль?
если у вас SSD, возможно эта статья будет любопытна — https://habr.com/post/397865/
ну и вместо сложного исправления руками, можно так

поместить в файлик user.js в профиле (то есть легко тиражируется)

/.cache/mozilla/
Как я понимаю он теперь все складывает в папку с профилем ?
И если не сложно, скажите как это называется? Переносимый профиль что ли?

эмм.. ну я же не вижу что у вас в итоге.. )). скорее это НЕ-переносимый профиль

при создании аналогичных виндовых линков, кроме опции пути, надо указывать опцию -no-remote

я просто в очередной раз "уволил" линукс.

там что то типа 5 папок и 2-3 файла на контроль. но к примеру, самая объемная опять же, папочка cache2 — если в общей папке, значит весь кеш лъется в "общак"

пример командной строки виндового линка

. а за линуксовым темплейтом, уж простите, но надо ребутаться в акронис )))

Шарпер, в итоге у меня получилось что и кэш и сам профиль находятся в оперативной памяти и при выключении компьютера сбрасываются на SSD.
В итоге получается что SSD не изнашивается и бонусом идет быстрая работа Firefox.
Виндой не пользуюсь совсем, только разве под виртуалкой. Изучаю линукс.
что же касается папки cache2 то можно ограничить ее размер в about:config и она будет такой какой Вы захотите. (например 2-3 мб или же 20-30 мб).
так что папка cache2 это не проблема.

а про файл user.js скажу что это очень удобная штука, но в связи с новой политикой Мозиллы, он в большинстве случает бесполезен, так как один и тот же параметр изменяет название из релиза в релиз, а ещё убираются те параметры которые были раньше.
По собственному опыту скажу, я только настроил под себя файл user.js, как через месяц вышло обновление Firefox и сломало некоторые параметры. Я начал искать почему же так произошло, оказалось что компания посчитала их не нужными и удалила.
Вот один из примеров, коих наверное ещё множество.
Был такой параметр browser.tabs.animate который включал и отключал анимацию вкладок при их открытии и закрытии. Мне хотелось большей отзывчивости от браузера и я отключил эти анимации. Если честно, они только мешают работе и отнимают время на закрытие вкладки.
После очередного обновления Firefox он стал называться toolkit.cosmeticAnimations.enabled.
И так далее с другими параметрами.
После нескольких таких ломающих обновлений, я просто забил на это.
Времени править не было.

Что же касается этой статьи на хабре, то в моем случае не страшна запись каждую секунду, так как все это находится в оперативной памяти.