Categories
lifehack php sysadmin

Caching delle pagine del mio blog

Siccome sono in un periodo di ottimizzazione ho abilitato il caching delle pagine del mio blog utilizzando wp-cache ed ho rimaneggiato 2/3 righe di codice delle template (non visibili ad occhio ma che mi hanno fatto risparmiare circa un paio di kb a pagina).

Se notate qualcosa di strano lasciatemi pure un messaggio…

ciuaz

19 replies on “Caching delle pagine del mio blog”

a cosa serve precisamente? anche io sono in piena ristrutturazione del mio sito, e vorrei capire come renderlo più snello e veloce… dato che con le ultime dieci plugin instalalte si è appesantito tantissimo!

p.s. non ti becco mai su messenger :(

è un pochino più spinto ed ottimizzato…

Resta il fatto che comunque un wp-cache serve solo per sito con un buon numero di accessi ed IMHO neanche questo blog ne produce abbastanza per valutarne l’uso… ma l’idea era cmq di testare pro e contro di una soluzione del genere.

Ciao, visto che ho aggiunto questo interessante blog al mio lettore RSS, noto questa tua comunicazione e vorrei evidenziare che il mio plugin (come anche wp-shortstat e gli altri) non funziona con wp-cache, per l’evidente motivo che se la pagina è “staticizzata”, il codice PHP che registra la visita nel DB non sarà eseguito :) questa cosa me l’hanno già chiesta alcune persone sul mio blog e così ho fatto notare che le due cose sono “per loro natura” non compatibili!

sospettavo, anche se in realtà applicando un time-to-expire abbastanza basso per le pagine cache-ate il tuo plugin dovrebbe funzionare comunque (anche se con qualche imprecisione).

Inoltre wp-cache può essere disabilitato on-fly se le richieste arrivano da particolari ip, referrer o agents. Quindi per l’analisi degli accessi da motori di ricerca può essere comunque utile.

La cosa potrebbe essere particolarmente comoda per i classici slashdot effect, limitando il caching per quelle pagine linkate direttamente da /. – digg – ziobudda, etc. Perdi ovviamente le statistiche on-fly (che comunque riesci a ricostruire dai log di apache) però ottimizzi un attimo il carico di lavoro della tua macchina.

Come dicevo l’installazione di wp-cache è solo un esperimento e dubito che lo terrò attivo per le poche richieste che ho al giorno (giro su 5000 pageview / giorno e circa 2000 accessi unici motori di ricerca esclusi)

ps grazie per il “blog interessante” :)

Fullo, avrei una domanda tecnica, se non ti spiace.
Se ho ben capito il funzionamento di questa WP-cache si basa solo un tempo di vita della pagina in cache e quindi non viene verificato se il contenuto è effettivamente cambiato nel frattempo, dico bene o dico male?
Grazie.

male, lo script in realtà è abbastanza evoluto ed ogni volta che modifichi i dati sul db riaggiorna la pagina in questione (ie cambio io del testo o arriva un nuovo commento). Inoltre se carichi dei dati dall’esterno (ie adsense) questi non vengono cache-ati a meno che tu non vuoi forzare la cosa.

Ok, quindi le pagine in cache viene generata in base all’input, praticamente come le pagine statiche di Movable Type?

viene generata alla prima richiesta e mantenuta fino a modifiche per un tempo determinato dall’admin.

scusa, forse non mi sono spiegato bene.
Quello che mi interessava sapere (visto che sto realizzando un CMS per blog), è se il file in cache viene rigenerato:
A) nel momento in cui arriva un commento (quindi come MovableType)
B) oppure nel momento in cui l’utente richiede la pagina lo script controlla nel database se ci sono state modifiche.

come both?!?
Sono sistemi alternativi, mica farà il rebuild due volte :D
Se ricrea la parte di cache interessata all’arrivo di nuovo input, mi sembra non abbia senso controllare anche in lettura che non ci siano nuovi contenuti… o mi sta sfuggendo qualcosa?

se la cache non esiste => crea file
se la cache esiste & nuovo commento => aggiorna file
se la cache esiste & pagina modificata => aggiorna file [le modifiche possono essere anche lato admin]
se la cache esiste & cache scaduta => aggiorna file
se la cache esiste & referrer senza cache => usa pagina dinamica

ah, ok, io come input intendevo sia un commento che una qualsiasi modifica lato admin, quindi rientriamo nel caso A, la modifica alla cache avviene in corrispondenza di un qualsiasi nuovo input (chiaro che se la cache non esiste o è scaduta va fatto l’aggiornamento).

Quindi una modifica ai contenuti potrebbe richiedere il rebuild di N file di cache, non necessariamente solo uno.

Ah, grazie comunque per le informazioni, gentilissimo. :)

Grande Fullo! La tua idea di installare wp-cache ha preceduto la mia di qualche giorno! Vorrei però un tuo illuminato parere!
Il mio sito risiede su Tophost e da qualche mese, nei periodi di punta degli accessi, mi da il seguente errore: Error establishing a database connection. Ho aperto 2 ticket a tophost che dopo aver fatto un’analisi dei log ha dedotto che, cito testualmente:
“Il sito innesca di tanto in tanto le limitazioni del mysql (maggiori sono le richieste contemporanee e minori sono quelle che MySQL permette. In pratica siti con meno richieste sono più fluidi mentre siti con più richieste lo sono meno proprio per evitare che il carico eccessivo incida sulle prestazioni generali di MySQL).
Per quanto riguarda questi momenti, sembra che il sito subisca delle strane “raffiche di visite”, potrebbe essere l’effetto dei qualcosa
legato all’RSS o magari qualche spider tipo technorati.”
Tu che ne pensi? E’ plausibile?
Io, cmq, dopo questa risposta pensato così che l’unica soluzione (oltre a cambiare server di hosting) era installare wp-cache ma avevo qualche dubbio sulla sua stabilità, performance, etc. Poi ho letto nei miei feed rss il tuo post, e quindi la domanda sorge spontanea: come ti trovi?
Ciao e complimenti per il tuo blog che seguo assiduamente!

allora, io ho attivato wp-cache perchè ho notato che sono spesso vittima di attacchi di referrer spam (circa 500 pageview in un minuto e poi basta per una giornata, il che è quasi un ddos) volevo quindi vedere come si comportava in quei casi (meno estremi di un ./ effect ma comunque con il loro impatto sul sito).

Per ora mi trovo bene, dopo un pochino di test ho messo un timelife di 12h circa sulle pagine e facendo così ho circa 300pg cache-ate in contemporanea (spazio occupato su disco 20Mb circa). Il che non mi preoccupa visti i Gb di spazio a mia disposizione.

Certo in uno spazio “più angusto” come tophost devi trovarti tu il tuo “ottimo”. Prova a partire con 1h ed aumentare finchè non vedi che il n. rimane pressocchè stabile (lo so, è un metodo MOLTO empirico ma un pochino funziona).

Cmq giusto per non saper ne leggere ne scrivere controlla le statistiche del tuo sito e prova a bannare usando .htaccess i referrer di siti porno/spam/etc che fanno molti accessi durante la singola giornata.

Grazie mille. Nei prossimi giorni lo installerò e ti farò sapere. Per quanto riguarda il banda .htaccess ho notato che non hanno tutti lo stesso ip, ma proverò a farci più caso.

Ciao, io ho un problema con WP-Cache, ho visto che sei esperto in materia, e magari puoi aiutare chi come me ha lo stesso problema.

Se io inserisco un nuovo articolo, o un nuovo commento, le pagine in cache non vengono aggiornate, o meglio, viene aggiornata quella in cui il commento è inserito, ma non le altre che invece nella sidebar continuano a riportare gli utlimi articoli o gli ulimi commenti prima del nuovo input.

Esiste un modo per non cachare la sidebar?

Comments are closed.