Firefox пишет много данных на SSD. Как это исправить?
Твердотельные накопители наконец-то стали доступными для большинства пользователей ноутбуков и ПК. У них много достоинств, основным из которых является высокая производительность, но есть и недостатки. К недостаткам стоит отнести меньшую по сравнению с HDD износостойкость (ресурс записи). Правда, у современных твердотельных накопителей срок службы обычно превышает сроки морального устаревания.
Полный потенциал твердотельник раскрывает в качестве системного диска. В этой конфигурации операционная система и установленные на системный диск приложения читают и пишут данные на твердотельный накопитель. Как оказалось, браузер Mozilla Firefox каждый день пишет относительно большой объём данных, чем убивает ресурс SSD.
Большинство пользователи ПК знают, что браузеры записывают много данных на жесткий диск или HDD. Но сколько именно? Об этом задумался Сергей Бобик [Sergei Bobik], установивший на свой компьютер бесплатную версию SSDLife. Этот софт позволяет оценить состояние SSD и показывает приблизительное время жизни накопителя.
В течение двух дней Сергей не работал ни с чем, кроме браузера и электронной почты. И был очень удивлен, когда узнал, что на твердотельный накопитель в один из этих двух дней было записано 12 ГБ данных. Поскольку никаких объемных файлов он не загружал, а рабочие сайты не могли дать кэш такого объема, было решено найти причину случившегося.
Сергей Бобик вел наблюдение за статистикой, предоставленной приложением, в течение двух недель. Как оказалось, даже когда компьютер не работал (но не был выключен), на твердотельный накопитель загружались большие объемы данных вплоть до 10 ГБ.
Главным виновником случившегося оказался браузер Firefox. Он загружал от 300 КБ до 2 МБ ежесекундно. Запись велась в файл с названием recovery.js. Как оказалось, это резервная копия сессии Firefox. Она используется в том случае, если «падает» браузер же операционная система. Это полезная, но ресурсоемкая функция. И если учесть то, что у SSD ограниченный ресурс, то здесь уже нужно решить для себя, что полезнее — рабочий диск или же восстановление текущей сессии браузера после его падения.
Сергей пишет, что проблема не только в одном файле. Для того, чтобы полнее изучить проблему, он выполнил несколько дополнительных действий:
1. Установил значение browser.sessionstore.interval в 15000 мс и закрыл все открытые вкладки браузера;
2. Открыл единственную вкладку с Google.com, подождал пару минут и закрыл ее;
3. Снова открыл браузер и проверил размер recovery.js. Его размер уменьшился до 5 КБ вместо 900 КБ;
4. Открыл несколько обзоров различных устройств в двух разных окнах. Поискал обзоры и открыл поисковую выдачу в новых вкладках;
5. Открыл третье окно браузера, открыл несколько сайтов во вкладках этого окна;
6. Запустил Process Monitor и начал отслеживать файлы recovery.js и cookie*.
7. Убрал ведение логов событий в «File→Capture Events». Также были очищены существующие логи;
8. Снова активировал ведение логов событий в «File→Capture Events». Оставил включенными три указанных выше окна браузера на 45 минут. На это время Сергей включил для собственных нужд Chrome;
9. Просмотрел статистику браузера в «Tools→File Summary».
Как оказалось, за это время Firefox записал 1,1 ГБ данных на диск. Основной объем — это файлы cookie*.
При этом файлик после всех проведенных манипуляций вырос всего лишь до объема в 1,3 МБ.
Сергей вернулся к Firefox и в одном из окон открыл почтовый ящик в outlook.com. Очистил все логи событий в Process Monitor и снова запустил мониторинг. На этот раз он оставил Firefox без дела всего на 10 минут. После этого размер recovery.js вырос до 1,5 МБ. Файлы куки снова заняли многие сотни мегабайт на SSD.
По словам автора работы, браузер может писать кучу данных в файл recovery.js, файлы cookie или же одновременно записывать информацию и туда, и туда. Если взять за константу 1,1 ГБ записанных Firefox данных, то за рабочий день можно ожидать записи информации объемом 35 ГБ, если не выключать систему. После измерений оказалось, что запись в файл recovery.js ведется постоянно со скоростью 2 МБ/с.
Что можно сделать?
Если у вас обычный жесткий диск, то можно особо не переживать. Но если в качестве системного установлен SSD, стоит выполнить ряд действий, которые могут остановить поток данных, генерируемых браузером Firefox.
Главное действие — настройка одного из параметров Firefox, browser.sessionstore.interval. Этот параметр доступен при выполнении команды "about:config"
в адресной строке. По умолчанию он равен 15 секундам. Временной интервал можно увеличить вплоть до 30 минут. В этом случае количество генерируемых Firefox за день данных снижается с 10–15 ГБ до 2 ГБ. Это все равно много, но в несколько раз меньше, чем до выполнения настройки обозревателя.
Ресурс некоторых потребительских SSD — всего лишь 20 ГБ записанных данных в день. Firefox может использовать половину этого ресурса. Если в вашем обозревателе постоянно открыто множество окон, а вы работаете с «тяжелыми» сайтами, то можно ожидать еще большего количества записанных Firefox данных, чем указано выше.
Увеличить значение параметра browser.sessionstore.interval стоит даже в том случае, если в качестве системного диска у вас стоит обычный HDD. Дело в том, что постоянная запись на диск снижает его производительность, и ПК может стать немного более быстрым, если убрать постоянную запись данных браузером.
Разработчики Firefox говорят, что знают о проблеме, но пока что решить ее не представляется возможным, поскольку придется полностью менять принцип работы функции Session Restore.