Osa kasutajaid on pöördunud meie poole murega, kus juba mõnda aega kasutuses olnud WordPress (WP) install, mida kasutatakse ka e-poena (toimub pidev andmete import/export) või millel vahetatakse tihti pluginaid, on jäänud justkui aeglasemaks või aeglaseks – mida teha edasi?
Tihti peale on unustanud veebimeistrid mainida või ei ole oldud teadlikud tõigast et WP enda kood on mõneti optimeerimata. Küll lisatakse/muudetakse wp_options tabelisse andmeid eri pluginate poolt ja jäetakse automaatselt vana info kustutamata – küll on olnud probleeme teiste tabelitega ja sellega et neid ei optimeerita aeg ajalt. WP sisuhaldus ise ei suuda tihtipeale selliseid automaatseid töid ette näha ja läbi viia, millega saaks antud sisuhaldust kiiremaks muuta. Siin kohal toongi välja mõned murepunktid:
1. WP wp_options tabelis ei ole autoload veerul või ka teistel veergudel korrektset indeksit (ehk antud veerg on indekseerimata). Eriti annab see tunda suuremate sisuhalduste andmebaaside korral, kus lehe laadimine võib võtta tänu sellele kuni 5x kauem aega.
2. “WP transients” – vanemad sätted/kirjed wp_options tabelis, mida enam ei kasutata kuid on jäänud ka kustutamata – tänu suurele hulgale koormavad ka tabelit.
3. Rämpspost/kommentaarid – Millal te viimati kommentaare puhastasite eemaldasite?
4. WP tabelites on andmete nö. ülejääk – ehk siis nö. overhead data – aitaks antud andmetabelite optimeerimine ja repair (Seda saaksite teha läbi phpMyAdmini DirectAdmin alt).
5. WP sisesed Cron tööd – Otseselt neid ei ole vaja käivitada iga kord kui toimub uus lehelaadimine. Piisab ka ca. 1x 15 minuti jooksul. Midagi olulist ei juhtu lehel nende muutmisest kuid suure kliendibaasi/külastatavuse korral lehe laadimisaeg muutub koheselt kiiremaks. (Nendest ja nende eemaldamisest olen kirjutanud ka paaris varajasemas artiklis.)
6. WP heartbeat – Ehk siis admin-ajax.php kaudu käiv nö. WP enda sisene toimivuse kontroll, mida laetakse igal lehelaadimisel vaikimisi…
Paljude lisaosade ja artiklitega veebilehel võib see aga põhjustada aeglust. Tuleks laadida hearbeat monitooriv lisaosa ja määrata seal sageduseks näiteks minimaalselt korra 15 min. jooksul (suurematel lehtedel oleks hea 1x per tund.)
7. WP tabelitel erinevad salvestusmootorid – ehk siis tuleks uurida, palju tabeleid kasutab MyISAM ja palju InnoDB storage enginit. Soovitus oleks muuta kõikidel tabelitel see InnoDB alla, kuna see on kiirem ja funktsionaalsem! (Lisainfot leiab ka SIIN )
8. – … Erinevad andmed mida WP’l otseselt vaja ei ole kuid mis on jäänud siiski andmebaasi ja mida WP sisuhaldus üritab igal lehelaadimisel kuvada või kontrollida.
Rohkem antud võimalustest ja mida täpsemalt tegema peaks on välja toodud ühes suurepärases inglisekeelses artiklis lehel: https://wpmudev.com/blog/optimizing-your-wordpress-database-a-complete-guide/