Kraften til et CMS som Joomla er som drives av en database, noe som gjør hele nettstedet og innholdet dynamisk. Men når det gjelder ytelse, er denne databaseinfrastrukturen Achilles Heel. Å hente innholdet fra databasen på hvert treff er en ytelsesflaskehals. Men det er en utmerket mellomgrunn ved bruk av Joomla-hurtigbufferen.
I denne artikkelen skal vi gi den ultimate guiden for bruk av flere former for Joomla-cache for å gi nettstedet ditt et øyeblikkelig og utmerket ytelsesløft.
Hva er hurtigbuffer?
Ifølge Wikipedia:
En cache er en maskinvare- eller programvarekomponent som lagrer data slik at fremtidige forespørsler om disse dataene kan serveres raskere; dataene som er lagret i en cache kan være et resultat av en tidligere beregning eller en kopi av data som er lagret andre steder. EN hurtigbuffertreff oppstår når de forespurte dataene kan bli funnet i en cache, mens a cache glipp oppstår når det ikke kan. Cache-treff serveres ved å lese data fra hurtigbufferen, noe som er raskere enn å beregne et resultat på nytt eller lese fra et tregere datalager; jo flere forespørsler som kan serveres fra hurtigbufferen, jo raskere utfører systemet.
Men hva betyr dette når det gjelder Joomla?
Når en besøkende får tilgang til nettstedet ditt, vil Joomla vanligvis kjøre en rekke spørsmål i databasen for å hente all informasjonen, for eksempel menyer, innhold, moduler og annet dynamisk innhold og gjengi den på farten.
Etter hvert som datamengden i databasen din vokser, eller siden din får flere og flere besøkende, begynner ytelsen til den generelle konfigurasjonen å bli dårligere. Selv med få brukere, på delt hosting, kan ytelsen være treg, uansett om nettstedet ditt får mange besøkende eller ikke.
Når Joomla-hurtigbufferen er i bruk, lagrer ditt første treff dataene i et sett med lokale filer (i Joomla-hurtigbiblioteket) i stedet for å treffe MySQL-databasen med de samme spørsmålene igjen og igjen. Påfølgende treff vil hente innholdet fra disse filene, i stedet for fra databasen.
Dette er fordi å lese data fra en lokal fil er mange ganger raskere enn å lese dem fra en database.
Dette betyr at hele nettstedet vil lastes nesten umiddelbart og vil fungere mye bedre. Nettstedet ditt vil føles raskere og kunne støtte flere samtidige brukere.
Slik ser hele konseptet ut i et bilde:
Vær oppmerksom på at dette er forskjellig fra caching i nettleseren - nettlesercaching er noe som anbefales av webserveren (men gjøres av den lokale nettleseren). Server-caching er derimot faktisk caching av ressursene og HTML opprettet på webserveren.
Hvis du vil lese mer om hvordan du utnytter caching i nettlesere, kan du lese denne artikkelen her..
Selvfølgelig er den ENESTE måten du virkelig kan forbedre ytelsen på hvis du bytter til en raskere hosting-server. Se på vårt VPS for InMotion anmeldelse her.
Slik aktiverer du Cache i Joomla
Caching er en funksjon som er implementert i Joomla-kjernen. Derfor er det veldig greit å aktivere Joomla-hurtigbufferen.
Fra Global konfigurasjon, klikk på System Tab, og på høyre side er det Cache-innstillinger seksjon.
Klikk på rullegardinmenyen og velg PÅ - Konservativ caching or PÅ - Progressiv caching i Cache-innstillingene, og legg en rimelig mengde på få minutter. 60 minutter bør være minst mulig for de fleste nettsteder.
Konservativ caching lar deg spesifisere at spesifikke moduler ikke er hurtigbufrede (i innstillingen til selve modulene).
Progressiv hurtigbufring overstyrer denne innstillingen og cacher alltid alle modulene. Vi pleier å bruke konservativ caching selv, slik at vi opprettholder muligheten til å bestemme oss for ikke å cache en spesifikk modul.
Generelt vil vi anbefale at denne tiden er lengre, vanligvis 240 minutter (4 timer) eller enda mer. Du kan alltid skylle (eller tilbakestille) hurtigbufferen hvis du vil oppdatere den.
Når du trykker på Bruk, vil Joomla-caching for moduler og komponenter være aktivert. derimot denne innstillingen er ikke nok, vi har fortsatt ett skritt å gå! Vi vil fortsatt aktivere sidebuffering.
For å aktivere caching av Joomla-sider, må du gå til Utvidelser> Plugins, søk etter Cache og klikk på System - Sidebuffer. Du må sørge for at dette pluginet er aktivert. Du kan også velge å angi cache i nettleseren ved å aktivere Bruk Browser Caching bytte om.
Du kan også velge å ekskludere spesifikke menyelementer fra hurtigbufring, for eksempel er det eksklusive menyen Kontakt oss.
Hvis det er sider du vil ekskludere fra hurtigbufring, kan du gå til kategorien Avansert og spesifisere hver URL du vil ekskluderes fra hurtigbufring. Du må spesifisere hver URL du vil ekskludere fra hurtigbufring, på en egen linje.
Vanlige uttrykk støttes også, for eksempel om \ - [az] + vil ekskludere alle nettadresser som har 'om-', for eksempel 'om oss', 'om meg', 'om-joomla' osv mens / komponent / brukere / ekskluderer alle nettadresser som har / komponent / brukere /.
Når du har aktivert og lagret, bør du se en mye forbedret lastetid på websiden.
Hvis du bruker et sidehastighets testverktøy som https://webpagetest.org/ Du bør se en sterk forskjell, spesielt hvis du også har aktivert nettlesercaching.
Du bør spesielt legge merke til en markant forskjell i Time to First Byte:
Hvis Joomla-verten støtter det, for eksempel hosting av CollectiveRay. Med - Det kan også være lurt å aktivere Memcache for å lage din Joomla-nettstedet enda raskere!
Hvordan tømme eller skylle Joomla-hurtigbufferen
Når du har aktivert Joomla-hurtigbufferen, oppdateres ikke innholdet på forsiden av nettstedet ditt før cachetiden utløper i henhold til innstillingene dine.
Så hva gjør du hvis du vil tilbakestille hurtigbufferen? Dette er en ganske enkel prosedyre. Bare gå til System> Tøm hurtigbuffer, og klikk på Slett alt. Dette vil spyle hele Joomla-hurtigbufferen, og innholdet vil nå bli oppdatert med det ferske innholdet.
Du kan bare spyle bare bestemte deler av hurtigbufferen ved å merke av i riktig avkrysningsrute og klikke på Slett.
Alternativ Joomla Cache Plugin
Et problem som vi finner med den opprinnelige Joomla-hurtigbufferen, er at du ikke bare kan tilbakestille en enkelt side. For nettsteder som har hundrevis eller til og med tusenvis av sider, blir tilbakestilling av all hurtigbuffer hver gang du utfører en liten endring, en flaskehals, spesielt hvis du har mye trafikk.
I dette tilfellet anbefaler vi å velge et alternativt Joomla cache-plugin som lar deg tilbakestille sidebufferen på en URL eller på sidenivå.
Vårt favorittalternativ Joomla cache-plugin er JotCache. I tillegg til avanserte hurtiginnstillinger for hurtigbufring, kan du også varme opp hurtigbufferen (dvs. gjennomsøke alle sidene slik at de plasseres i hurtigbufferen før en bruker treffer dem, bare tømme hurtigbufferen for en enkelt side og ekskludere spesifikke nettadresser eller hele komponenter fra caching. For eksempel vil du kanskje ekskludere Virtuemart-komponenten din fra caching, eller brukermodulen / komponenten din.
Sjekk de avanserte innstillingene her:
Og her er skjermen som lar deg tilbakestille eller tømme hurtigbufferen til en enkelt side:
Hvordan aktivere Joomla Memcached
En av fikseringene vi har hatt den siste tiden, er en fiksering for å få nettstedet til å lastes vanvittig raskt - og det var da vi første gang hørte om Joomla Memcache (d).
Hvis dette støttes av serverinfrastrukturen, vil vi aktivere dette. For eksempel noen av nettstedene våre som er på SiteGround, har dette aktivert fordi det gir et fint hastighetsøkning. Forresten, vi liker serveren satt opp på SiteGround. Som standard bytter nettstedet ditt fra en billig delt hosting -tjeneste til SiteGround vil lastesiden reduseres med minst 2 sekunder (uten andre endringer).
Det betyr at de setter opp serverne sine veldig veldig pent. Men det er mer å gjøre nettstedet ditt raskt. Det er her Joomla Memcached spiller inn.
I tillegg til standardoppsettet, SiteGround tilby tre nivåer av hurtigbuffer for å gjøre nettstedet ditt raskere
- Static Cache - cacher det statiske innholdet ditt (ligner på hva en CDN ville gjort)
- Dynamic Cache - Den lager kopier av nettstedets dynamiske innhold og lagrer dem i server-RAM. Dette krever sitt eget tilpassede plugin for å kunne grensesnittet godt med nettstedet ditt og serveren det er vert for
- Joomla Memcached-teknologien fremskynder databasesamtaler, API-samtaler og gjengivelse av sider ved å lagre data og objekter i minnet for å redusere antall ganger en database blir spurt. SiteGround er det eneste selskapet som bruker memcached-algoritmen på et delt servermiljø.
Det som er bra er at Joomla støtter memcache som standard, men siden dette krever litt finjustering, vil du ikke finne det under de normale cacheinnstillingene i Global Configuration.
Som du kan se nedenfor, er Joomla 3 memcached-innstillingene skjult (du har ikke et memcached-alternativ nedenfor) og må aktiveres ved å gjøre en liten justering i filen configuration.php.
For å aktivere Memcache må du redigere Configuration.php og redigere følgende to variabler:
til:
der xxxxxx er en port spesifisert av hosting-serveren din. Bekreft informasjonen med vertsserveren din.
Joomla Memcache-innstillinger
Når dette er gjort, blir Joomla nå memcached, og du bør se en annen forbedring av lastetiden til nettstedet ditt. Dette er spesielt nyttig for travle nettsteder. Sørg for at du sjekker om nettstedet ditt støtter memcached - hvis ikke, bør du gi det SiteGround et blikk ;)
Det er mange andre artikler om ytelse på dette nettstedet, en av de mest populære er hvordan du løser feilen som heter, utnytte caching i nettleseren - vi har en fullstendig forklaring på CollectiveRay.
Hvordan aktivere PHP OpCache for Joomla
Ovennevnte punkter burde allerede ha ført nettstedet til en ganske forbedret laste- og gjennomføringstid. Men det er fortsatt en ting som holder lastetiden tilbake.
Dette er vanligvis tiden det tar å utføre selve PHP-koden. Se, PHP er et programmeringsspråk som kjøres linje for linje. Serveren oversetter vanligvis PHP-koden til maskinutførbare instruksjoner og utfører dem deretter.
Imidlertid, når det gjelder å utføre instruksjonene igjen, vil de bli oversatt igjen. Så hver gang samme kode kjøres, må den oversettes igjen.
Dette er en ytelsesflaskehals som kan løses gjennom noe som kalles OpCode caching eller OpCaching. Når du bruker OpCode-hurtigbufring, opprettes en ny type hurtigbuffer som lagrer den tidligere oversatte maskinkoden slik at når linjen må kjøres på nytt, er den maskinutførbare koden allerede tilgjengelig.
Nedenfor kan du se et diagram over hvordan dette fungerer i det virkelige liv:
OpCode-caching krever støtte fra hosting-serveren din. Hvis nettstedet ditt kjører på CPanel og WHM, må du få ROTT-tilgang til WHM og aktivere PHP-FPM eller en annen OpCode-cachepakke.
Dette er også forskjellig mellom PHP 7.2 og PHP 7.3 - det er best å spørre hostingfirmaet ditt om dette er mulig og hvordan du gjør det. Vi bruker en InMotion VPS, så vi har full kontroll over tjenesten, og vårt nåværende oppsett bruker PHP-FPM.
Hvis du har ROTT-tilgang til WHM, går du til PHP MultiPHP Manager og installerer en pakke med PHP-FPM.
Når du har aktivert dette, vil du kunne se følgende informasjon i PHP-informasjonen i Joomla. Du finner dette under System> Systeminformasjon> PHP-informasjon
Du kan se Cache-treffene, dette er en indikasjon på at PHP henter OpCodes fra cachen og ikke gjenskaper dem fra bunnen av hver gang.
Alternativt caching-alternativ - LiteSpeed Server
Nok en gang, hvis du har en VPS på plass, kan du ha mye mer kontroll og presse ut bedre ytelse fra serveren din.
En av de avanserte teknikkene vi har gjort for å gjøre nettstedet vårt sinnsykt raskere, er å bruke LiteSpeed-server i stedet for Apache eller NGINX. LiteSpeed er en bedriftswebserver som erstatter Apache.
Dette betyr at du kan beholde all konfigurasjonen for Apache, men få en mye raskere utføringstid.
LiteSpeed har både OpCache og Page caching innebygd som en spesifikk Joomla-komponent. Den leveres med sin egen avanserte hurtigbufringskomponent som bare lar deg spyle enkeltsider, slik at hvis du oppdaterer en side, trenger du ikke å ugyldiggjøre hele cachen.
Det er mange avanserte cachemuligheter du kan bruke, vi har brukt denne serveren for å få en utrolig lastehastighet på nettstedet. LiteSpeed-serveren koster $ 10 / måned, men vi mener dette er en utmerket investering.
Sjekk ut LiteSpeed Server Now
Merknader:
Når du aktiverer Joomla -hurtigbufferen, kan du legge merke til at "antall treff" ikke lenger øker for hvert treff. I hovedsak, siden du lagrer en kopi av innholdet en stund, vil treffene bare øke hver gang hurtigbufferen utløper. Selv om dette kan høres ut som en ulempe, mener vi at du bør ignorere trefftellingen fullstendigless om du aktiverer Joomla -hurtigbufferen eller ikke. Antall treff er skjevt og unøyaktig av forskjellige årsaker
1. De blåses opp av dine egne hits
2. De blåses opp av roboter, crawlere og andre "uvirkelige" eller "spøkelsesbesøkende", disse er ikke reelle besøkende til nettstedene dine. De er bare skript som gjør robotoppgavene sine. Å tenke på disse som faktiske personer som leser innleggene dine, vil føre til et urealistisk scenario
3. Tjenester som Google Analytics er mye mer nøyaktige til å håndtere skript og lage en detaljert analyse og profil for besøkende på nettstedet ditt. Det vil gjøre deg mye mer bra hvis du bruker et skript som Google Analytics til dette. Du kan bruke vår Joomla Google Analytics-plugin å gjøre dette.
Som du kan se på hele nettstedet vårt, har vi deaktivert de fleste steder der Joomla -treff vises, fordi vi tror dette er brukless, bokstavelig talt sløsing med ressurser. Hvis du vil vite hvem som treffer nettstedet ditt, kan du bruke Google Analytics. Hvis du vil imponere de besøkende med antall sidevisninger du har, kan du legge til noen sosiale knapper. De er mye mer utsatt for å bringe mye trafikk, og selvfølgelig er de faktisk nøyaktige.
Joomla 1.5
Aktivering av Joomla Cache er også grei. Fra Global konfigurasjon, klikk på System Tab, og på høyre side er det Cache-innstillinger seksjon. Klikk Ja på Cache-innstillinger, og sett en rimelig mengde i minutter (60 minutter bør være ganske bra for de fleste nettsteder). Når du har trykket på Bruk, blir hurtigbufring aktivert.
Joomla 1.0
Standard Joomla-hurtigbuffer er aktivert fra Site> Global Configuration> System> Cache Settings (eller Site> Global Configuration> Cache tab for Joomla 1.0), og merk den som aktivert.
Selv om det er komponenter skrevet for hurtigbufring, vil caching gi nettstedet ditt et øyeblikkelig løft.
Ofte Stilte Spørsmål
Hva er hurtigbuffer?
En hurtigbuffer er en mekanisme som lagrer en midlertidig kopi av innholdet på lokal hurtiglagring (for eksempel disk eller minne), slik at serveren ikke trenger å hente innholdet fra databasen hver gang en besøkende treffer et nettsted. Dette gjør lastetiden til et nettsted mye raskere.
Hvordan aktiverer jeg Joomla-hurtigbufferen?
Det er forskjellige alternativer for å aktivere Joomla-hurtigbufferen. Den enkleste metoden er å aktivere dette via Joomla-kjernen, i Global Configuration, under System i Cache Settings-delen. Bare aktiver hurtigbuffer til på - konservativ hurtigbufring. Du bør også aktivere sidecache-plugin under Utvidelser> Plugins for hurtigbufring på sidenivå. Du bør også se på denne artikkelen for flere andre avanserte alternativer for hurtigbufring.
Hvordan tømmer jeg Joomla-hurtigbufferen?
For å tømme Joomla-hurtigbufferen, bare gå til System> Tøm hurtigbuffer og klikk på Slett alt.
konklusjonen
Ovenfor har vi sett de forskjellige måtene du kan aktivere Joomla-cache, både fra kjernen eller ved bruk av eksterne og avanserte komponenter for å gjøre nettstedet ditt raskere. Send oss en linje og gi oss beskjed hvis vi har savnet noe.
Vær så snill forlate en nyttig kommenter med tankene dine, så del dette på Facebook-gruppen din (e) som synes dette er nyttig, og la oss høste fordelene sammen. Takk for at du delte og var hyggelig!
Avsløring: Denne siden kan inneholde lenker til eksterne nettsteder for produkter som vi elsker og anbefaler helhjertet. Hvis du kjøper produkter vi foreslår, kan vi tjene et henvisningsgebyr. Slike avgifter påvirker ikke våre anbefalinger, og vi godtar ikke betaling for positive anmeldelser.