Object Caching
Când vine vorba de stocarea în cache, există o mulțime de tipuri diferite. Există stocarea în cache a browserului și stocarea în cache a paginilor, ca să nu mai vorbim de stocarea în cache a dispozitivelor mobile și a utilizatorilor. Dacă utilizați WP Rocket, veți beneficia fără îndoială deja de aceste tipuri de cache. Dar un alt lucru pe care trebuie să-l adăugați la cunoștințele dvs. este object caching.
Object caching implică stocarea interogărilor bazei de date și atunci când este activată pe site-ul dvs. WordPress, poate ajuta la accelerarea timpilor de execuție PHP, la reducerea încărcării bazei de date și la livrarea de conținut vizitatorilor dvs. mai repede.
În acest articol, vom vedea ce este object caching și cum funcționează cu WordPress (inclusiv cache-ul încorporat al obiectelor oferit de WordPress). De asemenea, vom analiza câteva moduri diferite prin care puteți implementa acest tip de cache pe site-ul dvs. pentru a-i îmbunătăți performanța.
Ce este Caching-ul?
Dar mai întâi, să vedem ce este în general cache-ul pentru a pune în cache object caching.
Memorarea în cache este procesul de stocare temporară a datelor accesate frecvent într-o memorie cache, astfel încât să le puteți refolosi pentru solicitări ulterioare.
Când cineva aterizează pe site-ul dvs. și nu aveți cache-ul activat, browserul său trimite o cerere pentru pagină către serverul dvs. Serverul dvs. apoi procesează cererea, compilează pagina și apoi o trimite înapoi la browser.
Dacă aveți un site cu trafic redus, serverul dvs. se poate așeza și relaxa, ca să spunem așa, deoarece trebuie doar să proceseze și să compileze pagini din când în când. Dar serverele care găzduiesc site-uri mari cu activitate intensă – trebuie să lucreze mult mai greu pentru a procesa și compila mai multe pagini pe secundă pe măsură ce curg cererile.
Aici cache-ul poate ajuta la ușurarea încărcării pe serverul dvs. Stochează o copie a fiecărei cereri și apoi data viitoare când apare aceeași cerere, verifică memoria cache și o servește de acolo. Dacă nu există nicio copie, cererea este trimisă la server pentru a fi procesată și compilată, iar la întoarcerea la browser o copie este stocată în cache.
Frumusețea cache-ului este că vă salvează serverul de a face mai multă muncă decât trebuie, permițându-i să gestioneze mai mult trafic decât ar face altul. De asemenea, are avantajul suplimentar de a vă livra conținutul mai rapid utilizatorilor.
Dacă sunteți interesat să aflați mai multe despre cum funcționează stocarea în cache, consultați: De ce un plugin pentru cache este vital pentru site-ul dvs. WordPress.
Diferite tipuri de cache
Există două tipuri principale de stocare în cache: stocarea în cache a clientului și stocarea în cache a serverului.
Există multe tipuri de stocare în cache a clientului, dar cel cu care probabil sunteți cel mai familiarizat este stocarea în cache a browserului. Aici browserul stochează conținut static al paginii web, astfel încât data viitoare când cineva vă vizitează site-ul, pagina este extrasă din memoria cache a computerului în loc să fie descărcată din nou.
Object caching este un tip de stocare în cache a serverului. Există o mulțime de tipuri de cache pe partea de server, dar cele mai importante de știut despre acestea includ:
- Object caching. Vom analiza mai detaliat mai jos, dar object caching implică stocarea interogărilor bazei de date, astfel încât data viitoare când este nevoie de o bucată de date, acestea să fie livrate din cache, fără a fi nevoie să interogheze baza de date.
- Memorarea în cache a paginilor. Memorarea în cache a paginii implică stocarea întregului cod HTML al unei pagini, astfel încât în vizualizările ulterioare, conținutul – inclusiv fișiere și interogări de baze de date – să poată fi generat și afișat fără ca WordPress să fie nevoit să o facă de fiecare dată.
- Opcode caching. Opcode caching implică compilarea codului PHP între fiecare cerere. Pentru executarea codului PHP, compilatorul PHP trebuie să compileze mai întâi codul și apoi să genereze cod executabil pentru executarea serverului. Opcode memorează în cache codul deja compilat.
- Memorarea în cache a CDN. Rețele de livrare de conținut (CDN) care utilizează servere din întreaga lume pentru a stoca fișiere de site-uri statice (de exemplu, CSS, JavaScript și fișiere media) pentru livrare mai rapidă către utilizatorii care sunt geografic la distanță de serverul gazdă.
Deci, Ce este Object Caching?
Object Caching implică stocarea rezultatelor interogării bazei de date, astfel încât data viitoare când este necesar un rezultat, acesta poate fi difuzat din cache, fără a fi nevoie să interogați în mod repetat baza de date.
Ca sistem de gestionare a conținutului, WordPress depinde în mod natural – și în mare măsură – de baza de date. Ca atare, eficiența bazei de date este crucială pentru scalarea WordPress.
Dacă aveți un site cu trafic ridicat și solicitările către paginile dvs. generează un număr mare de interogări în baza de date, serverul dvs. poate deveni rapid copleșit, afectând în schimb negativ performanța site-ului dvs.
Așadar, atunci când cache-ul obiectelor este activat pe site-ul dvs., vă poate ajuta să ușurați încărcarea bazei de date și a serverului și să livrați interogări mai rapid.
Ce este WP_Object_Cache?
WordPress are un object cache încorporat numit WP_Object_Cache. Introdus în 2005, oferă o modalitate de a stoca automat orice date din baza de date în memoria PHP pentru a preveni interogări repetate.
Totuși, acest object cache stochează numai obiecte pentru o singură încărcare a paginii – aruncă obiectele din cache la sfârșitul cererii, astfel încât acestea trebuie reconstruite de la zero data viitoare când este solicitată pagina.
Deși aceasta este o caracteristică utilă a WordPress, asigurarea faptului că baza de date nu este interogată de mai multe ori în timpul încărcării unei singure pagini pentru solicitări de interogare similare, nu este exact eficientă.
Aici vă pot ajuta soluțiile de cache persistente. Object caching este mai puternică atunci când poate fi utilizată pentru a adăuga obiecte în cache între mai multe încărcări de pagină.
Soluțiile de stocare în object caching persistente externe, cum ar fi Redis și Memcached, fac posibilă păstrarea memoriei cache a obiectelor între cereri. Acest lucru ajută la accelerarea livrării interogărilor de baze de date, facilitând în același timp volumul de lucru al serverului dvs.
Ce sunt Redis și Memcached?
Object caching persistente este o necesitate dacă doriți să scalați. Fără aceasta, performanța site-ului dvs. va încetini pe măsură ce complexitatea și traficul cresc. Același lucru este valabil și pentru utilizatorii conectați și pentru paginile dinamice – stocarea în cache a obiectelor poate contribui la o experiență mai bună și mai rapidă a utilizatorului.
Există două instrumente populare de object caching care merită verificate: Redis și Memcached.
Ambele instrumente sunt stocări rapide și puternice de date în memorie care pot reduce încărcarea bazei de date MySQL a site-ului dvs., reducând în același timp timpul de răspuns al site-ului dvs. și consolidând capacitatea site-ului dvs. de a scala și gestiona traficul crescut.
Memcached a fost mult timp o alegere de cache populară, dar Redis poate face tot ce poate Memcached și cu un set de caracteristici mult mai mare. În plus, este mai popular și este mai bine acceptat.
Pentru o atenție aprofundată asupra caracteristicilor, avantajelor și dezavantajelor Redis și Memcached, acest articol din Stack Overflow conține câteva informații generale despre ambele instrumente.
Cum se Utilizează Object Caching cu WordPress
Object caching încorporat în WordPress funcționează deja pe site-ul dvs. în mod implicit, deci nu trebuie să faceți nimic pentru al activa.
Dar dacă doriți să duceți object caching la nivelul următor, astfel încât interogările bazei dvs. de date să fie memorate în cache în mod constant între încărcările paginii, există câteva opțiuni disponibile care sunt ușor de implementat.
1.Folosiți Redis
Pentru object caching alimentat de Redis, o puteți face cu ajutorul pluginurilor gratuite disponibile pe WordPress.org.
Cu peste 30.000 de instalări active, cea mai populară opțiune este Redis Object Cache. Suportă Predis, PhpRedis (PECL), HHVM, replicare, clustering și WP-CLI.
Înainte de a utiliza acest plugin, va trebui să verificați dacă site-ul dvs. utilizează un mediu PHP cu extensia necesară PHP Redis și un server Redis funcțional.
Dacă sunteți în regulă, acest plugin este foarte simplu de instalat – doar activați pluginul, accesați Setări> Redis și faceți clic pe „Enable Object Cache”.
Dacă întâmpinați probleme, va trebui să verificați cu gazda dvs. web dacă serverul pe care este găzduit site-ul dvs. este configurat pentru Redis.
Alternativ, o altă opțiune pe care ați putea să o încercați este WP Redis, care este puțin mai implicat în configurare. Adus în atenție de către cei de la Hostingul web Pantheon, acest plugin necesită să creați un fișier numit object-cache.php și să îl adăugați în folderul wp-content și să editați fișierul wp-config.php (dar numai dacă nu sunteți un utilizator Pantheon).
Dacă WP-CLI este o mare parte a fluxului de lucru de dezvoltare, s-ar putea să vă fie mai convenabil să utilizați WP Redis, deoarece vine cu o varietate de comenzi.
2.Întrebați Hosting-ul
Dacă utilizați o găzduire WordPress gestionată, gazda dvs. oferă probabil object caching prin Redis. Așadar, consultați documentația hosting-ului pentru informații despre cum să activați object caching sau contactați-i pentru a verifica dacă este disponibilă.
Multe hosting-uri oferă Redis ca o caracteristică sau un supliment – Pantheon, Kinsta și Cloudways, pentru a numi doar câteva.
Dacă sunteți pe o găzduire partajată ( Hosting Shared ), este mai puțin probabil ca acesta să fie disponibil gratuit. În acest caz, dacă object caching nu este disponibil pentru dvs., vă recomandăm să vă actualizați pachetul de găzduire sau să schimbați găzduirea.
Concluzie
Object caching oferă o soluție relativ simplă pentru îmbunătățirea performanței bazei de date, mai ales având în vedere faptul că performanța WordPress depinde în mare măsură de viteza bazei de date.
Cu soluții precum Redis, puteți activa rapid Object caching pe site-ul dvs., indiferent dacă este vorba de un plugin sau pur și simplu solicitând gazdei dvs. să îl activeze.
Folosiți Object caching pe site-ul dvs.?