AfterDawn logo

Firefox voi syödä salaa tietokoneen muistin – Näin hillitset sen

Manu Pitkänen Manu Pitkänen
11 kommenttia

Nykyaikaisiin selaimiin lisätty istuntojen palautustoiminto on osoittautunut varsinaiseksi resurssisyöpöksi ja ongelmalliseksi tapaukseksi SSD-levyjen kanssa. Esiin on nostettu erityisesti Firefox, jonka palautustoiminto voi kirjoittaa yhden päivän aikana kymmenien gigatavujen edestä dataa tallennusmuistiin.

Asia nousi julkisuuteen kun ServeTheHome-sivuston Sergei Bobik kirjoitti havainnoistaan artikkelin. Bobik testasi Firefoxin palautustoiminnon käyttäytymistä avaamalla kolme selainikkunaa auki ja jätti ne toimettomiksi 45 minuutin ajaksi. Hän selasi verkkoa samaan aikaan, mutta käytti siihen Googlen Chromea.

Vajaan tunnin aikana kolme Firefox-ikkunaa oli kirjoittanut tietokoneen levylle jopa 1,1 gigatavua, vaikka Firefox oli ollut käytännössä toimeton koko mittauksen ajan. Mikäli sama tahti olisi jatkunut koko päivän, olisi pelkästään Firefox kirjoittanut levylle kymmeniä gigatavuja dataa. SSD-levyjen tapauksessa käyttäytymismalli on ongelmallinen, koska ne kestävät vain rajallisesti kirjoittamista.


Firefoxin palautusprosessia voi kuitenkin muokata niin, että dataa ei kirjoiteta ylettömästi. Muokkaaminen onnistuu kirjoittamalla selaimen osoiteriville komennon about:config ja etsimällä parametri browser.sessionstore.interval. Mikäli parametrin arvo on 15000, päivittää Firefox istuntoosi liittyvää tietoa 15 sekunnin välein (parametrin arvo on millisekunteina). Arvoa kasvattamalla päivitystiheys pienenee ja samalla kirjoitetun datan määräkin levylle pienenee. Esimerkiksi arvolla 1800 000 Firefox päivittää tietoja vain 30 minuutin välein.

Bobik testasi myöhemmin palautustoiminnon käyttäytymistä Chromella. Hänen mittauksissaan Chromen päivittäinen kirjoitusmäärä voi nousta 24 gigatavuun.

11 KOMMENTTIA

trooper781/11

Tsjaa, tässäkö olisi syy miksi allekirjoittaneen auki jättämä kone on ollut ½-1 vuorokauden käynnissäolon jälkeen täysin juntturassa eikä vika korjaannu kuin painamalla virtanäppäintä. Varmaankin kokeiltava auttaako tuo kikka asiaa mitenkään.

OneMember2/11

Chrome ja Firefox tekee noita palautustiedostoja aivan liian tiuhaan.

Itse olen pienentänyt arvoja kohteilla:
browser.sessionstore.max_tabs_undo - palautettavien välilehtien määrä.
browser.sessionstore.max_windows_undo - palautettavien selainikkunien määrä.
Ja suurensin arvoa:
browser.sessionstore.interval - 900 000 tuntui sopivalta omaan mieleen.

Tietenkun suuri apu on myös sillä, jos selaimen sulkee kun ei käytä... eikä vaan jätä sitä taustalle päälle.

trooper783/11

Lainaus, alkuperäisen viestin kirjoitti OneMember:


Tietenkun suuri apu on myös sillä, jos selaimen sulkee kun ei käytä... eikä vaan jätä sitä taustalle päälle.


Tapana nyt vaan on jättää kaikki niin kuin ne on ja sitten joskus kun koneelle palaa niin jatkaa siitä mihin jäi. Toki, tuotakin voisi kokeilla joskus xD

1pertti4/11

Otsikossa ja jutussa puhutaan Firefoxista. Jutun lopussa mainitaan, että Chromen päivittäinen kirjoitusmäärä voi nousta 24 gigatavuun. Firefoxissa oli testissä auki neljä ikkunaa, montako oli Chromessa?

En puhu kummankaan selaimen puolesta, vaan ihmettelen, onko niiden toiminnassa merkittäviä eroja tuossa suhteessa. Kaikki selaimethan kuitenkin tallentavat koko ajan selatun sisällön.

kane_k5/11

Kännykän firefoxissa näytti olevan 10 sekuntia vakiona

2056/11

Win 10 kokeilin (normi levyt) kun 1800 000 muutin /käynnitys/ läppäri "Asus N76V OLI nahkeampi/hiirin liikut pyki" kehveli vissiin toiminnolla olis SSD Lätyllä enemmän hyötyä joten palautin 1500 aset. Kun muuten nyt kone rokkaa.

LariZ7/11

Empä mä olis Firefoxista huolissani :D


Logitech pistää paremmaks

avthein8/11

Dynaamisempi ajoitus olisi järkevämpää. Eli varmistetaan vain silloin kun on tapahtunut riittävästi varmistamista vaativia muutoksia.

Jumtauni9/11

Artikkelissa olisi voinut myös kertoa miten tuon saa kokonaan pois päältä, kummassakin selaimessa.

LariZ10/11

Lainaus, alkuperäisen viestin kirjoitti Jumtauni:

Artikkelissa olisi voinut myös kertoa miten tuon saa kokonaan pois päältä, kummassakin selaimessa.

Lainaus:

Chrome ja Firefox tekee noita palautustiedostoja aivan liian tiuhaan.

Itse olen pienentänyt arvoja kohteilla:
browser.sessionstore.max_tabs_undo - palautettavien välilehtien määrä.
browser.sessionstore.max_windows_undo - palautettavien selainikkunien määrä.
Ja suurensin arvoa:
browser.sessionstore.interval - 900 000 tuntui sopivalta omaan mieleen.

Tietenkun suuri apu on myös sillä, jos selaimen sulkee kun ei käytä... eikä vaan jätä sitä taustalle päälle.


en tie saisko pois päältä jos muuttais noita arvoja. Palautukset 0, tosta intervallista en tiedä. Jos ei mitään palautettavaa ole niin kai sekin sammuu?

Kasavuori11/11

Lainaus, alkuperäisen viestin kirjoitti Jumtauni:

Artikkelissa olisi voinut myös kertoa miten tuon saa kokonaan pois päältä, kummassakin selaimessa.

Firefoxissa (Linux) olen itse asettanut sen toimimaan vain RAM:ssa. Silloin tuolla jatkuvalla kirjoittamisella ei ole mitään merkitystä.
Chromelle (Windows) sama asia on hoitunut RAMDisk:llä.

Toteutus tuottaa samalla molemmille selaimille täydellisen Incognito-tilan virran katkaisun jälkeen.

Firefoxille ohjeet em. löytyy tuolta:
https://wiki.archlinux.org/index.php/Firefox_on_RAM

kohdasta "Relocate cache only to RAM" (toimii myös Windowsissa)

RAMDisk:t on mm. joissakin MSI:n emoissa saatavilla, ja myös joitakin ohjelmia saman asian hoitoon löytyy. (Google auttanee)

Edit: RAMDisk käytössä voidaan virran katkaisun yhteydessä tuottaa muistista vedos, joka tallennetaan haluttuun paikkaan (omassa koneessa USB-tikulle). Käynnistettäessä kone, vedos tallennetaan uudelleen RAM:iin.

TÄMÄN UUTISEN KOMMENTOINTI ON PÄÄTTYNYT