Raskere WordPress

Wordpress er verdens mest populære bloggprogramvare. Man kan laste ned ekstrafunksjonalitet i alle mulige former via såkalte ‘plugins’. En rekke ‘themes’ for å komme raskt i gang er også lett tilgjengelig. Dette gjør WordPress til et veldig bra verktøy.

En standard WordPress-installasjon har et stort problem – hastighet. For hver sidevisning blir en rekke PHP-filer og biblioteker startet, som gjør at en standard installasjon på en dedikert server, VDS eller delt hosting ikke skalerer til mange simultane besøkende.

En løsning på dette er å legge til en cache-mekanisme. Denne bloggen omhandler WP Super Cache som er av de mest populære cache-plugins til WordPress.

Kort fortalt genereres det statiske html-filer fra din dynamiske WordPress-blogg. Etter at html-filen er generert vil web-serveren servere denne filen istedetfor å kjøre de relativt tunge og mer kostbare WordPress PHP-scripts.

Denne bloggposten forutsetter at du har satt opp WordPress for ditt domene.

Nedlasting av plugin

download_super_cache

Først må WordPress Super Cache plugin lastes ned. Det kan gjøres fra denne siden.

Pakke ut plugin
Pakk deretter ut filen du lastet ned. Filen er en zip-fil og kan pakkes ut med f.eks Winzip, hvor man høyreklikker på mappen og velger “Extract..”. Velg en mappe på din lokale disk hvor du ønsker å pakke ut filene. Det er ikke viktig hvor filene blir plassert, bare du husker katalogbanen til neste steg.

Opplasting av filer
upload Det er nå klart for å laste opp filene til ditt webhotell. Start ditt favoritt FTP-program. Jeg bruker FileZilla som er en enkel og fritt tilgjengelig klient. Filene skal lastes opp til wp-content/plugins/-mappen. Last opp hele “wp-super-cache”-katalogen du pakket ut i forrige steg.

Aktivere plugin
activate_plugin I din WordPress-blogg skal det nå være et nytt valg i Plugins-listen. Velg “WP Super Cache” fra listen og klikk “Activate”. Plugin er nå aktivert, men er foreløpig ikke i drift. Du vil få en meldng som sier “WP Super Cache is disabled. Please go to the plugin admin page to enable caching”. Klikk på linken i den meldingen.

Super Cache har en rekke innstillinger. I denne blogg-posten bruker vi kun standardinnstillingene. Velg derfor “ON WP Cache and Super Cache enabled” og klikk “Update Status”

Lenger nede på siden er det en overskrift som heter “Mod Rewrite Rules”. Her kan det komme feilmelding om at “Mod Rewrite rules cannot be updated!”. Sjekk at PHP-scriptet har skrivetilgang til .htaccess-filen. Dersom det ikke finnes en .htaccess-fil, last opp en ny med følgende innhold:

# BEGIN WordPress
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Refresh deretter Super Cache sin konfigurasjonsside.

Du skal nå se en knapp som heter “Update Mod_Rewrite Rules”. Klikk på denne for å skrive reglene til .htaccess-filen.

Testing av oppsett

……………………………………….

Benchmark-resultater

For å vise hvor stor ytelselsforskjellen blir har jeg laget en liten test før og etter installasjon av plugin.

Her følger resultatene av en test gjort via Apache sin ab mot siden UTEN plugin:

Concurrency Level:      20
Time taken for tests:   10.147994 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      6843386 bytes
HTML transferred:       6575000 bytes
Requests per second:    98.54 [#/sec] (mean)
Time per request:       202.960 [ms] (mean)
Time per request:       10.148 [ms] (mean, across all concurrent requests)
Transfer rate:          658.46 [Kbytes/sec] received

Det overføres med andre ord litt over 98 sider i sekundet.

Her følger resultatene MED plugin:

Concurrency Level:      20
Time taken for tests:   0.697188 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Non-2xx responses:      1001
Total transferred:      518518 bytes
HTML transferred:       334334 bytes
Requests per second:    1434.33 [#/sec] (mean)
Time per request:       13.944 [ms] (mean)
Time per request:       0.697 [ms] (mean, across all concurrent requests)
Transfer rate:          725.77 [Kbytes/sec] received

Man kan se at nå overføres det i overkant av 1434 sider i sekundet.

Twitter Digg Delicious Stumbleupon Technorati Facebook Email