A lapok kisöprése és más Firefox mágiák

kami911 képe

Ez az írás néhány, a Firefox böngészőben jelen lévő, különlegesnek tűnő oldal leírását tartalmazza. Azokról a Firefox mágiákról lesz szó, amelyeket könnyedén mindenki felfedezhet magának az

about:about

oldalról – melyet a címsorba kell beírni – kiindulva lehet elérni. És még sok minden mást is. Ilyen például az információkkal teli új telepítés utáni indítóoldal, az about:welcome oldalon, a jogi tudnivalók az about:rights oldalon, a szórakoztatónak szánt about:mozilla és about:robots oldalak, valamint a közreműködök és licenceket ismertető about:credits, illetve about:license oldalak is.

Természetesen innen elérhetőek a jól ismert Firefox beállító oldal is az about:preferences címen, valamint a telepített kiegészítőket listázó about:addons oldal. Nem nehéz felfedezni az eltárolt belépéseket megjelenítő about:logins oldalt is, továbbá nem hiányozhat a felsorolásból, a már említett Védelmi vezérlőpult sem, amelyet az about:protections oldalt meglátogatva érhet el.

A hibakeresésben jártasabb felhasználók nem lepődnek meg azon, hogy – a menüből is elérhető – a böngésző beállításait, működési értékeit megjelenítő hibakeresési információk about:support megjelenítő oldal, a profilokat és a róluk származó információkat felsoroló about:profiles oldal is könnyen elérhetővé válik.

Ha okozott bosszúságot a Firefox összeomlása, akkor érdemes a megjelenő ablakban, email címmel és lehetőleg angol nyelven megadott hibaleírásával elküldeni a fejlesztő Mozilla számára. Ezzel is hozzásegítve a gyártót a böngésző tökélesítéséhez. Ha ezt nem tette volna meg mostanság, akkor az about:crashes oldalon ezt a későbbiekben is megteheti, az adott sorban lévő hibajelentés beküldésével. A gyors kiadási ütemtervnek megfelelően azonban nem nagyon érdemes az elmúlt két hónapnál régebbi hibajelentést beküldeni.

Jelen korunk weboldalai tele vannak JavaScript-tel, multimédiás tartalmakkal, rengeteg helyet igényelnek. Ez jól megmutatkozik, abban is, hogy a böngészők memória igénye nőttön-nő. Ez nem a böngészők hibája, hiszen a modern böngészők nagyon fejlett megoldásokat alkalmaznak a memóriaigény, a memóriatöredezettség felszámolására, és bevetik a legújabb hardvereszközök támogatását is, hogy megfelelő teljesítményt nyújthassanak. Azonban van az úgy, hogy a rendelkezésre álló memória elfogy, vagy a beállítások nem optimálisak.

A memóriaigény csökkentésére, illetve megfigyelésére és az inaktív lapok bezárására a Firefox is kínál beépített eszközöket.

Lapok kisöprése

A Firefox rendelkezik egy olyan funkcióval, hogy automatikusan kisöpri a lapokat, hogy megakadályozza az alkalmazás összeomlását, ha kevés a rendszer elérhető memóriája. A következő kisöprendő lap több tulajdonság alapján lesz kiválasztva. Az oldal bemutatja, hogy a Firefox miként priorizálja a lapokat, és mely lap lesz kisöpörve, ha aktiválódik a funkció. A lap kisöprése (jelenleg csak a listában legfelső) kézileg is aktiválható a lenti Kisöprés gombbal.

A felület eléréséhez írja be a címsorba a következőt:

about:unloads

A funkció két részből áll: a memóriaterhelés-érzékelőből és a lapkiürítőből. Amikor a memórianyomás-érzékelő alacsony memóriahelyzetet észlel, elindítja a lap-kisöprő programot, amely rangsorolja a lapokat, és kiválaszt egy lapot a kisöprendő lapok közül, vagy ha nincs kisöprendő lap, akkor elindítja a belső memóriatúlnyomás-jelzést, amely lehetővé teszi a böngésző alrendszereinek, hogy csökkentsék memóriahasználatukat.

A lapok priorizálásának két módja van:

  1. A Firefox alapvetően a legkevésbé használt sorrendben tölti ki a lapokat, kizárva a médiát lejátszó, a kép a képben vagy a WebRTC szolgáltatásokat használó lapokat. A kitűzött lapok magasabb prioritást kapnak, és kevésbé valószínű, hogy ki lesznek söpörve.
  2. Ha több fül van megnyitva, a legtöbb esetben, ha tizenegynél több fül van, a Firefox extra számításokat végez a füleket tároló folyamatok azonosítására, és megbecsüli az egyes fülek memóriahasználatát, majd a nagyobb memóriájú és több folyamatot tartalmazó, a fülek kisöprésével csökkenti a terhelést.

Az oldal tartalmaz egy táblázatot, ahol a meglévő lapok ugyanabban a sorrendben jelennek meg, ahogyan a Firefox választja ki a következő lapot, amelyet ki kell söpörni a memóriából. A Kisöprés gombra kattintva az első sorban megjelenő, a Prioritás legalacsonyabb értékével rendelkező lap kerül kirakodásra. Ha a Prioritás (Priority) értéke egy kötőjel (-), akkor a megfelelő lap nem söpörhető ki.

A fent említett két mód közül az elsőben a Firefox minden egyes laphoz kiszámítja az Utolsó hozzáférés (Last Accessed) és az Alapsúly értékét (Base Wheight), és a lapokat ezen értékek szerint rendezi, a többi attribútumot, például a Másodlagos súlyt nem számítja ki a CPU teljesítményének megtakarítása érdekében. Az alábbiakban egy példa látható erre az esetre:

A második módban a Firefox azonosítja az egyes lapokat befogadó folyamatokat, és a Folyamatazonosítók (Process IDs) oszlopban megjeleníti azok folyamatazonosítóit. A folyamatazonosítók félkövér betűvel jelennek meg, ha a lap legfelső keretének gazdája, és dőlt betűvel, ha a folyamatot több lap között is meg van osztva.

Az összes fülhöz tartozó folyamat azonosítása után a Firefox megbecsüli a fülek memóriahasználatát, és kiszámítja a nemrégen nem használt fülek másodlagos súlyát. A nemrégiben megnyitott fülek esetében a Firefox nem számítja ki a másodlagos súlyt és a memóriát, így ezek az oszlopok üresen maradnak. Az alábbiakban látható egy példa erre a második esetre:

Az automata lapkisöprés le is tiltható, ha problémát okozna, vagy nem akarja használni:

A következő - az about:config beállításokkal további testreszabási beállításokat végezhető el. A felület eléréséhez írja be a címsorba a következőt:

about:config

A megjelenő ablakban kattintson a „Kockázat elfogadás és továbblépés” gombra:

A megjelenő felső keresőmezőben kereshető a beállítás neve részben vagy egészben. A keresés után a szűrt listából:

browser.tabs.unloadOnLowMemory

Az alapértelmezett true értéket állítsa át false értékre.

További részletekért tekintse meg a Lapkisöprés leírást.

Információ a memóriáról és a szemétgyűjtés

A Firefox mérnökei az utóbbi években nagyon nagy figyelmet fordítottak a Firefox memóriaigényének a csökkentésére. Ennek a projektnek a neve a MemShrink volt, amelynek a Firefox-szal közös szerelemgyereke a memory oldal a Firefox-on belül.

A felület eléréséhez írja be a címsorba a következőt:

about:memory

Ez a Firefox böngészőbe épített memóriajelentés eszköz képes megmérni a Firefox aktuális memóriafoglalását és részletesen megjeleníteni a különböző csoportosítások mentén egy-egy weboldal, böngészőfolyamat, bővítmény, illetve az egész böngésző memóriahasználatát. Ezeket az adatokat ez az eszköz képes lementeni egy fájlba, amelyet aztán a felhasználó a Bugzilla hibajelentésekbe is becsatolható, a memóriaszivárgási hibák felderítését segítendő. Ezek a jelentések vissza is tölthetőek egy aktuális helyzethez történő összehasonlításhoz, valamint a felhasználónak lehetősége van szemétgyűjtési (Garbage Collect - GC) műveletet is indítani a „Free memory” részben található, „GC”, „CC” és „Minimize memory usage” gombokra kattintva.

Érdekli, hogy hogyan született meg az about:memory oldal és azt azt létrehozó MemShrink kezdeményezés? A fejlesztés további érdekességeiről ebben a cikkben olvashat: A MemShrink projekt és az about:memory oldal születésének története.

További információk a böngészőről

A memóriakezeléssel és a böngésző alapvető működésével kapcsolatban egy csomó információt tett elérhetővé a Mozilla a Firefox webböngészőjében. Azonban a lapokról, azok működéséről, a hálózati kapcsoltokról is részletes információkat nyerhet ki a böngészőből.

Manapság a weben böngészhető lapok jó része, a web 2.0 nevében hatalmas mennyiségű JavaScript kódot futtat a kliens oldalon. Ez sok-sok gépet igencsak lelassít. Nevezzük akár a régi gépek tervezett avultatásának, vagy a multimédia és a felhasználói élmény evoluciója következő lépcsőfokának, azért jó fél szemmel figyelni, hogy egy-egy komolyabb oldal mennyi erőforrást is igényel a számítógéptől. Az about:memory oldalról már esett szó, de hogy egy adott weboldal milyen terhelést ró a processzorra és az akkumulátorra, arról az about:processes és az about:performance oldalakon tájékozódhat.

Az about:processes, azaz Folyamatkezelő oldal egy egyszerű összefoglalást nyújt az adott lapok (és egyéb böngészőelemek, például kiegészítők) memória- és processzor (CPU) éhségéről. Az about:performance, azaz Feladatkezelő oldal a memóriaigény mellett, az adott lap vagy kiegészítő energiahatását is láthatóvá teszi a felhasználók számára. Az említett tulajdonságok mentén sorba is lehet rendezni a listát, a jobb szélen megjelenő „X” gombra kattintva felszabadítható a számítógépet sanyargató lap vagy bővítmény alól a számítógép.

Az about:telemetry oldal megjeleníti a telemetria által gyűjtött teljesítmény-, hardver- és funkcióhasználati adatokat és testreszabásokat. Ezek az információk a Mozilla-nak a Mozilla Firefox tökéletesítése érdekében kerülnek elküldésre. Ezen információk nem tartalmaznak személyes adatokat, de igény esetén ezen az oldalon tesztreszabhatóak a beállítások: about:preferences#privacy.

A hálózati kapcsolatok tükre, amely megmond mindent a Firefox hálózati kapcsolatairól, DNS bejegyzéseiről, WebSocket-ekről, és statisztikáiról, az about:networking oldalon érhető el. És itt kapcsolható be olyan naplózás is, amely a böngésző és a weboldalak hibakereséséhez is használható. Az eszköz használatáról lásd a HTTP Logging leírást. Szintén a hibakeresésre használható a profilozó eszköz about:profiling, amely mind a böngészővel, mind a weboldalakkal kapcsolatos problémákra fényt tud deríteni. Az alkalmazást profilozó eszköz érdekessége, hogy az adatokat akár weben a Firefox fejlesztőmérnökeivel (vagy másokkal) is meg lehet osztani. További részletekért látogassa meg a https://profiler.firefox.com/ webhelyet és olvassa el a dokumentációt.

Ugyanígy megfigyelhetők a WebRTC kapcsolatok is az about:webrtc oldalon, valamint a ServiceWorkerek is az about:serviceworkers oldalon. Az about:compat pedig a webkompatibilitási problémák listáját és megoldását tartalmazza. A böngésző gyorsítótár használatát (amelyet akár vagy csak lemezre, vagy csak memóriára is korlátozhat a felhasználó) az about:cache oldalon találja.

Látható, hogy a böngészőből még sok-sok kinyerhető információ van, amelyet mindenki felhasználhat a böngészési élmény, a böngésző, és a weboldalak jobbá tételéhez. Amennyiben további kérdése van a böngészővel kapcsolatban, javaslom, hogy látogassa meg a:

Forrás: