Beállítások és üzemeltetés
A wp_options tábla és a webhely sebessége
Hogyan lassíthatja a bolt adatbázisának wp_options táblája az oldalt, mit jelent az autoload, és mit tehetsz ellene.
Ha a bolt lassú, a wp_options tábla gyakran elkerüli a figyelmet. Ez a fejezet haladó hibaelhárítás: akkor érdemes elővenni, ha a lassú webhely általános lépéseit már végigpróbáltad. Az itt leírt műveletek adatbázis-ismeretet kívánnak, ezért ha nem érzed magabiztosnak magad, kérj meg egy tapasztalt WordPress- vagy WooCommerce-fejlesztőt.
Mi a wp_options tábla?
Ez a WordPress adatbázisának az a táblája, amely a webhely fontos adatait tárolja, például:
- a webhely webcímeit,
- az aktív bővítményeket,
- a widgetek beállításait,
- gyorsítótárazott adatokat.
Sok bővítmény, sablon és kiegészítő is ide menti a saját beállításait, ezért a tábla a WordPress működésének kulcseleme.
Mi az autoload?
Az autoload a wp_options tábla egyik beállítása: azt szabályozza, hogy egy adat automatikusan betöltődjön-e minden oldalbetöltéskor. Ha egy beállítás autoload értéke yes, a WordPress minden oldalnál lekéri, ami a gyakran használt beállításoknál gyorsítja a hozzáférést. Ha viszont túl sok beállítás van így megjelölve, felesleges adatot tölt be, és lassítja a webhelyet.
Szinte minden oldal, a bolt és az admin felület is lefuttatja ezt a lekérdezést:
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes'
Ha ez a lekérdezés nincs optimalizálva, lelassíthatja az oldalt.
Miért okoz gondot a tábla méretének növekedése?
A tábla nem nagy adatmennyiségre készült. Ahogy gyűlnek a bővítmények, sablonok és kiegészítők rekordjai, túlterhelődhet. Az autoload itt kulcsszerepet játszik: ha túl sok adat van yes-re állítva, mindet betölti minden oldal, nő a betöltési idő, és a webhely nehezebben skálázódik.
Az adatbázis-index a gyors keresést segíti, mint egy könyv tárgymutatója: a wp_posts táblán például a post_date vagy a post_type mezők indexe lehetővé teszi, hogy a rendszer csak a releváns bejegyzéseket töltse be. A wp_options táblán az autoload mezőre alapértelmezetten nincs index, mert eredetileg csak kevés beállítás tárolására szánták. Ahogy a webhely nő, és egyre több bővítmény ír bele adatot, az index hiánya lassíthatja a lekérdezéseket.
Objektum-gyorsítótár
Az objektum-gyorsítótár csökkenti, hogy minden oldalbetöltésnél a wp_options táblából kelljen adatot olvasni: a gyakran használt adatokat a memóriában tartja, ezzel tehermentesíti az adatbázist és gyorsítja az oldalt.
A beállításához külső gyorsítótár-eszközt használhatsz, például Redis vagy Memcached, és telepítened kell hozzá egy, az eszközt támogató WordPress-gyorsítótár-bővítményt. A telepítés után az eszközt be kell állítani a WordPresshez, ez gyakran a wp-config.php fájlban vagy a bővítmény beállításainál történik. Ha nem vagy jártas ebben, kérd a tárhelyszolgáltatód segítségét: ő ismeri a szerverkörnyezetet, és személyre szabott javaslatot tud adni.
Ajánlások
- Figyeld a tábla méretét. Rendszeresen ellenőrizd, hogy a
wp_optionsne nőjön túl nagyra, ideális esetben 500 sornál kevesebb legyen. A nagy adatmennyiség lassítja a lekérdezéseket. - Használj megfelelő tárolót. A bővítmény-, sablon- vagy kiegészítőspecifikus adatot megfelelőbb táblában érdemes tárolni, például a bejegyzéshez tartozó adatot a
wp_postmetatáblában, nem awp_options-ban. - Töröld a felesleges adatot. Bővítmény, sablon vagy kiegészítő eltávolítása után töröld a már nem használt beállításokat, hogy a tábla karcsú maradjon.