Skip to Content

Cache e faqeve për Odoo: dyqani dhe blogu nga RAM ose skedari – të shpejtë për vizitorët, motorët e kërkimit dhe IA-në

Moduli me kod të hapur website_page_cache i shërben faqet publike Odoo pothuajse si statike, mbetet i përditësuar te ndryshimet dhe përkthimet dhe tregon në panelin e kontrollit nëse dhe sa RAM nevojitet
10 nëntor 2026 by
Cache e faqeve për Odoo: dyqani dhe blogu nga RAM ose skedari – të shpejtë për vizitorët, motorët e kërkimit dhe IA-në

10 nëntor 2026  |  Zhvillim i brendshëm  |  Odoo, performancë dhe motorë kërkimi

Cache e faqeve për faqet e internetit Odoo: faqet publike të dyqanit dhe të blogut nga skedari ose RAM, në vend që të renderohen përsëri me çdo hapje

Një faqe interneti Odoo e riprodhon çdo faqe nga e para sa herë që hapet: kërkesa në bazën e të dhënave, shabllone, përkthime, çmime. Për një vizitor të vetëm kjo nuk vihet re. Por kur motorët e kërkimit dhe indeksuesit e IA-së marrin qindra ose mijëra faqe në shumë gjuhë, krijohet ngarkesë e vazhdueshme dhe bashkë me ta presin edhe klientët e vërtetë. Për këtë kemi zhvilluar modulin Odoo 19 website_page_cache dhe e kemi publikuar në GitHub si Open Source (LGPL-3): faqet e dyqanit dhe të blogut që hapen në mënyrë anonime shërbehen pothuajse si statike nga një cache, ose nga skedarë ose nga memoria operative (RAM), dhe çdo ndryshim – edhe në një përkthim – i heq automatikisht faqet e prekura nga cache.

E rëndësishme për këdo që dëshiron të gjendet: moduli nuk bllokon asnjë motor kërkimi dhe asnjë crawler IA-je. Të gjithë indeksuesit marrin të njëjtën përmbajtje si çdo vizitor, vetëm më shpejt. Ky shkrim shpjegon si funksionon cache, si duket paneli i kontrollit (me pamje ekrani), si të kuptoni nëse faqet tuaja nxihen në memorien operative dhe sa RAM shtesë do të duhej, cilat rregulla sigurie vlejnë dhe si ta instaloni modulin.

Shkurtimisht

TemaÇfarë vlen
Moduliwebsite_page_cache për Odoo 19, licenca LGPL-3, publik në GitHub
Çfarë ruhet në cache?Faqet e dyqanit dhe të blogut publike (lista, kategori, produkte, shkrime) në çdo gjuhë të çdo faqeje interneti
Për kë?Vetëm për vizitorët anonimë, vetëm kërkesat GET pa parametra kërkimi, vetëm statusi 200 me HTML
Vendi i ruajtjesSkedarë në disk ose RAM (tmpfs, e ndarë nga të gjitha proceset e punës); automatikisht sipas nevojës për hapësirë
PërditësimiÇdo ndryshim (edhe përkthimet, importet, skriptet) krijon përmes trigjerëve të bazës së të dhënave një hyrje në ditar dhe i bën të pavlefshme faqet e prekura
Paneli i kontrollitCilësimet, gjendja, statistikat (goditje, humbje, kohë e kursyer e serverit) dhe kontrolli „A nxihet në memorien operative?“ përfshirë „RAM-in shtesë të nevojshëm“
Motorët e kërkimit dhe IAAsgjë nuk bllokohet apo ngadalësohet; të gjithë marrin të njëjtat faqe, vetëm më shpejt
Frena emergjenteNjë çelës (enabled = 0) e çaktivizon cache në të gjitha proceset e punës brenda 30 sekondash

Problemi: ngarkesa nga crawlerët në faqet e internetit Odoo

Odoo është një sistem i plotë ERP dhe faqja e internetit është vetëm një nga shumë modulet. Çdo faqe që e hap një vizitor ose një robot kalon nëpër të njëjtën rrugë: përpunimi i kërkesës, pyetja e bazës së të dhënave, ngarkimi i të dhënave të produkteve dhe çmimeve, renderimi i shablonit QWeb, vendosja e përkthimeve dhe dërgimi i rezultatit. Varësisht nga faqja, kjo zgjat disa qindra milisekonda dhe gjatë kësaj kohe zë një nga proceset e pakta të punës.

Për motorët e kërkimit dhe indeksuesit e IA-së kjo është një çështje e përhershme:

  • Shumë gjuhë, shumë adresa: një faqe që ekziston në 46 gjuhë është për një crawler 46 adresa të ndryshme.
  • Çdo adresë merret më vete, shpesh nga shumë dërgues të shpërndarë njëkohësisht. Një cache klasike e shfletuesit nuk ndihmon këtu, sepse çdo kërkesë ka të bëjë me një adresë të re.
  • Pak procese pune: një shërbim Odoo zakonisht funksionon me një grusht procesesh. Nëse ato zihen nga kërkesat e crawlerëve, vizitorët e vërtetë presin në radhë.
  • I njëjti përmbajtje, përsëri e përsëri: një shkrim në blog ndryshon rrallë, por me çdo kërkesë ndërtohet përsëri me shumë mundim.

Rruga e dukshme – përjashtimi i crawlerëve – nuk është opsion për një kompani që dëshiron të gjendet. Dukshmëria në motorët e kërkimit dhe në përgjigjet e IA-së është e vlefshme. Më mirë është që faqet të shërbehen aq shpejt sa ngarkesa të mos ketë pothuajse peshë. Pikërisht këtë e bën cache e faqeve.

Si funksionon cache e faqeve

Moduli lidhet te hyrja e kërkesave të Odoo (ir.http). Me çdo kërkesë faqeje vendos brenda një pjese të milisekondës nëse faqja lejohet të vijë nga cache dhe pastaj e shërben pa bazë të dhënash, pa shabllon dhe pa renderim.

Diagram rrjedhe: kërkesa, kontrolli, çelësi i cache, goditje ose humbje, ruajtje dhe shërbim

  1. Kontrolli: vjen në shqyrtim vetëm një kërkesë anonime GET pa parametra kërkimi në një shteg të lejuar (dyqan, kategori, produkte, blog). Çdo gjë tjetër kalon nëpër Odoo si zakonisht.
  2. Çelësi i cache: ai përbëhet nga faqja e internetit, klasa e hostit, gjuha, shtegu, lista e çmimeve, pozicioni tatimor dhe gjendja e pëlqimit për cookie. Vizitorët që do të shihnin diçka tjetër nuk ndajnë kurrë të njëjtën hyrje. Hosti normalizohet gjatë kësaj: Odoo i shkruan adresat absolute gjithmonë nga domeni i faqes së internetit, jo nga kërkesa; adresa e kërkesës vendos vetëm nëse faqja konsiderohet adresë kryesore (lidhjet gjuhësore) dhe nëse duhet të indeksohet. Prandaj të gjitha emrat e huaj të hosteve ndajnë një hyrje të vetme bashkë me shënimin noindex, në vend që secili të zërë kopjen e vet.
  3. Goditje: nëse ekziston një hyrje e përditësuar, ajo shërbehet. Token CSRF në faqe vendoset përsëri për çdo kërkesë. Hapjet e shkrimeve të blogut vazhdojnë të numërohen.
  4. Humbje: nëse hyrja mungon ose është e vjetruar, Odoo e renderon faqen si zakonisht. Nëse rezultati është i përshtatshëm për cache (statusi 200, HTML, pa cookie, pa ID sesioni në tekst), ruhet; kërkesa tjetër është një goditje.
  5. E dukshme në header: çdo përgjigje mban headerin X-Page-Cache: HIT ose MISS. Kështu me çdo mjet mund të kontrollohet çfarë ndodhi.

Sa më shpejt?

Në sistemin tonë provë (kopje e faqeve tona të internetit, disa qindra faqe) koha mesatare e renderimit të një faqeje ishte rreth 490 milisekonda, ndërsa shërbimi nga cache rreth 23 milisekonda: afërsisht njëzet herë më shpejt. Sa më e ndërlikuar të jetë faqja, aq më i madh është fitimi. Nga të dyja vlerat paneli i kontrollit llogarit gjithashtu kohën e vlerësuar të kursyer të serverit.

Skedar apo RAM: zgjedhja e vendit të ruajtjes

Cache njeh dy vende ruajtjeje. Të dyja janë njëkohësisht të dukshme për të gjitha proceset e punës të Odoo, pra çdo faqe ekziston vetëm një herë, jo një herë për çdo proces.

Krahasim i cache së skedarëve dhe cache në RAM dhe rregulli i vendimit të automatikës

CilësimiKu ndodhen faqet?Karakteristikat
SkedarëDrejtori në dosjen e të dhënave të Odoo, për çdo bazë të dhënashmbijeton rinisjet; faqet e përdorura shpesh sistemi operativ i mban gjithsesi në memorie
Memoria operativetmpfs te /dev/shmshërbimi më i shpejtë; humbet kur riniset serveri dhe thjesht ndërtohet përsëri
AutomatikishtRAM, për sa kohë që gjithçka nxihet; përndryshe skedarëNjë punë mirëmbajtjeje (çdo 10 minuta) vendos mbi bazën e vlerësimit; qëndron te RAM kur gjykimi është „nxihet“ dhe „në limit“, që zgjedhja të mos ndryshojë vazhdimisht

Për shumicën e instalimeve Automatikisht është zgjedhja e duhur: merrni shpejtësinë e RAM kur ka vend dhe, përndryshe, kaloni te skedarët pa ndërhyrje.

A nxihet faqja e internetit në memorien operative? Dhe sa RAM mungon?

Nëse një cache në RAM është e mundur, varet nga tri gjëra: nga numri i faqeve, nga madhësia e tyre mesatare dhe nga memoria e disponueshme. Paneli i kontrollit e llogarit këtë për ju:

  • Numri i faqeve: për çdo faqe interneti numëron produktet e publikuara, faqet e listave të dyqanit, kategoritë, shkrimet e blogut dhe listat e blogut dhe e shumëzon me numrin e gjuhëve.
  • Madhësia e faqes: sapo faqet ndodhen në cache, matet mesatarja reale; deri atëherë vlen një vlerë e supozuar.
  • Vendi për cache: vlera më e vogël midis buxhetit të RAM-it të caktuar, madhësisë së tmpfs dhe gjysmës së memories operative të disponueshme. Serveri nuk duhet të bjerë kurrë në mungesë memorieje për shkak të cache.
  • Gjykimi: „nxihet me rezervë“, „në limit“, „shumë i madh“ ose „cache në RAM nuk është e disponueshme“. „Nxihet“ vlen kur nevoja është më së shumti 80 për qind e hapësirës së disponueshme.

Seksioni i panelit të kontrollit A nxihet në memorien operative? me numrin e faqeve sipas faqes së internetit, nevojën për hapësirë dhe të dhënën për RAM-in shtesë të nevojshëm

E re: sa RAM shtesë do të duhej?

Kur cache nuk nxihet, dëshironi të dini çfarë duhet ndryshuar. Prandaj paneli i kontrollit tregon nën gjykim një rresht konkret: „RAM shtesë për një cache në RAM: afërsisht … më shumë memorie operative në këtë server“ – ose „asnjë“, nëse vendi mjafton tashmë. Nëse në vend të serverit është shumë i vogël vetëm një cilësim, poshtë tregohet cili: buxheti i RAM-it i modulit ose madhësia e tmpfs (/dev/shm).

Paneli i kontrollit me buxhet RAM-i shumë të vogël: gjykimi Jo dhe kërkesa për ta rritur buxhetin e RAM-it të paktën në vlerën e nevojshme

Llogaritja prapa kësaj është e thjeshtë dhe e gjurmueshme:

Shembull llogaritjeje: 12.000 faqe herë 25 KB japin një nevojë prej rreth 300 MB, me rezervë rreth 375 MB, për këtë të paktën 750 MB memorie e lirë

  1. Nevoja = faqe × madhësia mesatare e faqes.
  2. Me rezervë = nevoja pjesëtuar me 0,8. Kjo vlerë duhet të nxihet në buxhetin e RAM-it dhe në tmpfs, që gjykimi të jetë „nxihet“.
  3. Memorie e lirë: meqë cache lejohet të përdorë më së shumti gjysmën e memories operative të disponueshme, serveri ka nevojë si memorie të lirë për të paktën dyfishin e vlerës nga hapi 2. Nëse mungon diçka, diferenca është RAM-i shtesë i nevojshëm.

Shembulli në figurë (12.000 faqe me nga 25 KB) është një ndihmë llogaritjeje, jo matje e faqeve tona. Për faqe të vogla interneti mjaftojnë disa dhjetëra megabajt; të dhënat shembull në pamjet e ekranit u mjaftuan me rreth 13 MB.

E rëndësishme për vlerësimin: llogaritja nuk numëron versione shtesë sipas listës së çmimeve ose vendit. Kush i përdor shumë prej tyre, le të planifikojë pak rezervë. Dhe një gjë tjetër: një buxhet RAM-i shumë i vogël është arsyeja më e shpeshtë pse automatika mbetet te skedarët – jo memoria operative që mungon. Paneli i kontrollit në këtë rast shfaq pikërisht këtë rresht.

Ndryshimet dhe përkthimet e pastrojnë cache

Një cache është e përdorshme vetëm nëse nuk shërben kurrë faqe të vjetruara. Një kufi thjesht kohor („hidhe çdo dymbëdhjetë orë“) do të ishte shumë i trashë: një çmim i ndryshuar ose një gabim shkrimi i korrigjuar do të duhej të priste deri në dymbëdhjetë orë. Prandaj moduli punon sipas përmbajtjes.

Rrjedha e pavlefshmërisë: ndryshimi, trigjeri i bazës së të dhënave, ditari i ndryshimeve, krahasimi, faqja e hedhur, rirenderimi në kërkesën tjetër

  1. Trigjerët e bazës së të dhënave: në të gjitha tabelat që mund të ndikojnë një faqe (produkte, variante, imazhe, stoqe, atribute, kategori, çmime, tatime, lista çmimesh, shkrime blogu dhe etiketa, të dhëna partnerësh dhe kompanish, pamje, assets, menu, gjuhë, cilësime të faqes së internetit) ndodhen trigjerë PostgreSQL. Ata e regjistrojnë çdo ndryshim në një ditar ndryshimesh.
  2. Varësitë dhe gjendja e bazës së të dhënave: çdo faqe e ruajtur në cache mban mend cilat regjistrime shfaq dhe gjendjen e bazës së të dhënave me të cilën u krijua.
  3. Krahasimi: nëse ekziston një hyrje në ditar që u krijua pas kësaj gjendjeje dhe lidhet me një nga këto regjistrime, faqja është e vjetruar.
  4. Ruajtje e re në cache: në kërkesën tjetër faqja e vjetruar hidhet, renderohet përsëri dhe ruhet sërish.

Edhe përkthimet janë të mbuluara

Odoo 19 i ruan tekstet e përkthyera në të njëjtin regjistrim me tekstin origjinal (si fushë JSON). Një përkthim i ndryshuar është pra për bazën e të dhënave një ndryshim krejt i zakonshëm rreshti – dhe trigjeri e sheh. Kjo vlen njëlloj për redaktimin nga ndërfaqja, për importet, ndërfaqet dhe skriptet që shkruajnë drejtpërdrejt në bazën e të dhënave. Një përkthim automatik në 46 gjuhë i bën pra të pavlefshme saktësisht faqet që e ndryshuan tekstin, dhe jo më shumë.

  • I synuar, jo i përgjithshëm: një produkt i ndryshuar i bën të pavlefshme faqet e tij, listat ku ndodhet dhe kategorinë përkatëse. Pjesa tjetër mbetet në cache.
  • Ndryshimet globale (shabllone, assets, gjuhë, menu, tatime, monedha) e bëjnë të pavlefshme gjithçka njëherësh, sepse mund të prekin çdo faqe.
  • Numëruesit lihen jashtë: numëruesi i hapjeve të shkrimeve të blogut ndryshon me çdo vizitë; ai me qëllim nuk shkakton asnjë pavlefshmëri, përndryshe cache do të ishte pa efekt te shkrimet e preferuara.
  • Rrjeti i sigurisë: përveç kësaj ekziston një moshë maksimale për çdo faqe (parazgjedhja 12 orë).
  • Asnjë gabim shkrimi nga cache: një gabim brenda një trigjeri regjistrohet si paralajmërim dhe nuk e bën ruajtjen vetë të dështojë.

Paneli i kontrollit dhe statistikat

Gjithçka që ju nevojitet për funksionim ndodhet në një vend: në Odoo te Faqja e internetit → Raporte → Cache e faqeve. Seksioni Përmbledhje është paneli i kontrollit (me cilësimet), seksioni Historiku tregon shifrat sipas ditës dhe faqes së internetit.

Paneli i kontrollit i cache së faqeve në Odoo: cilësimet, gjendja, statistikat dhe kontrolli A nxihet në memorien operative

Pamje ekrani nga një sistem provë me kopje të faqeve tona të internetit; emrat e faqeve janë zëvendësuar me vendmbajtës.

Cilësimet

CilësimiKuptimi
AktivÇelësi kryesor. Kur çaktivizohet, Odoo e shërben përsëri çdo faqe si më parë, në të gjitha proceset më së voni pas 30 sekondash.
Vendi i ruajtjesAutomatikisht, Skedarë ose Memorie operative
Mosha maksimale (orë)Rrjet sigurie; faqet rinovohen pas kësaj kohe pavarësisht nga ndryshimet
Buxheti i RAM-it (MB)Më së shumti kaq memorie operative lejohet të zërë cache në RAM; njëkohësisht kufiri për gjykimin „nxihet“
Kufiri i diskut (MB)Madhësia maksimale e cache së skedarëve; hyrjet më të vjetra hiqen të parat

Gjendja dhe statistikat

Gjendja tregon vendin aktiv të ruajtjes me kufirin, numrin dhe madhësinë e faqeve në cache dhe gjurmimin e ndryshimeve: sa ndryshime u regjistruan në 24 orët e fundit dhe sa tabela monitorohen. Nëse mungon një monitorim, paneli i kontrollit paralajmëron qartë, sepse atëherë cache nuk duhet besuar. Butonat lart lejojnë ta ekzekutoni mirëmbajtjen menjëherë, ta zbrazni cache ose t'i kontrolloni trigjerët dhe, nëse nevojitet, t'i krijoni përsëri.

Statistikat (Sot, 7 ditë, 30 ditë) përmbajnë:

  • Nga cache dhe Renderuar: goditje dhe humbje, prej tyre shkalla e goditjeve
  • Hequr (ndryshuar/skaduar): sa faqe u hodhën për shkak të ndryshimit ose skadimit
  • Koha e renderimit dhe koha e cache: mesatarja për faqe në krahasim
  • Koha e vlerësuar e kursyer e serverit dhe vëllimi i të dhënave nga cache

Shifrat i mbledh çdo proces pune më vete dhe i shkruan një herë në minutë; rreshtat më të vjetër se 90 ditë i pastron puna e mirëmbajtjes.

Historiku si diagram, pivot dhe listë

Te Historiku ndodhen vlerat ditore për çdo faqe interneti – si diagram, si tabelë pivot ose si listë. Kështu shihni nëse shkalla e goditjeve rritet përsëri pas një rinisjeje ose pas një ndryshimi të madh, dhe cila faqe interneti merr më shumë trafik nga cache.

Historiku i cache së faqeve si tabelë pivot me goditje, humbje dhe faqe të hedhura sipas faqes së internetit

Siguria: çfarë nuk vjen kurrë nga cache

Një cache faqesh nuk duhet të çojë kurrë në atë që dikush të shohë përmbajtjet e një tjetri. Prandaj moduli vepron sipas parimit: në dyshim mos e ruaj në cache.

  • Vetëm vizitorë anonimë: kush është i identifikuar, ka një shportë ose sjell një gjendje tjetër sesioni, merr gjithmonë faqen e renderuar normalisht.
  • Vetëm GET pa parametra kërkimi: kërkimet, filtrat, renditjet, format, shporta dhe arka mbeten të paprekura.
  • Vetëm statusi 200 dhe HTML: faqet e gabimit, ridrejtimet dhe skedarët nuk ruhen.
  • Asnjë ID sesioni në cache: një faqe që përmban një ID sesioni ose vendos një cookie nuk ruhet (dhe regjistrohet si paralajmërim).
  • Token CSRF për çdo kërkesë: tokeni në faqen e ruajtur në cache është një vendmbajtës dhe vendoset përsëri në çdo shërbim.
  • Çelës i imët: faqja e internetit, gjuha, lista e çmimeve, pozicioni tatimor dhe pëlqimi për cookie bëjnë pjesë në çelësin e cache; kush sheh diçka tjetër, merr një hyrje tjetër.
  • Disa baza të dhënash: çdo bazë të dhënash ka hyrjet e veta, ditarin e vet dhe statistikat e veta.
  • Asnjë rrjedhje e të dhënave: cache ndodhet lokalisht në server (skedar ose RAM). Asnjë e dhënë nuk transmetohet te palë të treta.

Motorët e kërkimit dhe indeksuesit e IA-së: asgjë nuk bllokohet

Disa operatorë i përgjigjen ngarkesës së crawlerëve me bllokime. Kjo e mbron serverin, por kushton dukshmëri. Moduli zgjedh rrugën e kundërt:

  • Përmbajtje e njëjtë për të gjithë: motorët e kërkimit, indeksuesit e IA-së dhe vizitorët marrin të njëjtën faqe. Nuk ka „version crawleri“ të veçantë dhe as njohje sipas identifikuesit të shfletuesit.
  • Përgjigjet më të shpejta ndihmojnë indeksimin: një faqe që përgjigjet në 20 në vend të 500 milisekondave e ngarkon më pak buxhetin e crawl dhe crawlerët mund të përfshijnë më shumë faqe në të njëjtën kohë.
  • Përmbajtje e përditësuar: meqë ndryshimet i bëjnë faqet menjëherë të pavlefshme, crawlerët nuk shohin kurrë një version të vjetruar – e rëndësishme nëse i mirëmbani përmbajtjet për kërkim dhe përgjigje të IA-së.
  • Të dhënat e strukturuara ruhen: JSON-LD, të dhënat meta dhe referencat hreflang janë pjesë e faqes në cache; sitemap-et dhe skedarët nuk i prek cache.

Nëse dëshironi të kufizoni gjithashtu ngarkesën, ky është një vendim i veçantë që mund ta merrni me vetëdije – moduli nuk jua imponon.

Minimizimi i HTML dhe shërbimi i kompresuar

Cache nuk kursen vetëm kohë llogaritjeje, por edhe vëllim të dhënash. Moduli e minimizon HTML para se ta ruajë dhe e shërben të kompresuar, nëse shfletuesi ose crawleri e mbështet:

  • Minimizimi (parametri website_page_cache.minify): komentet HTML hiqen, hapësirat bashkohen. Hiqen plotësisht vetëm aty ku shfletuesi i injoron gjithsesi, p.sh. midis elementeve bllok. Hapësirat midis elementeve inline mbeten, pre, textarea dhe skriptet mbeten të pandryshuara, të dhënat e strukturuara (JSON-LD) rishkruhen në mënyrë kompakte. Varësisht nga faqja, faqet janë 10 deri 30 % më të vogla. Në provën me shtatë faqe të vërteta, teksti, numri i elementeve, pozicioni i të gjithë elementeve dhe pamja e ekranit ishin identike me origjinalin. Shërbimi i parë (MISS) është minimizuar njëlloj si çdo tjetër i mëpasshëm (HIT).
  • Kompresimi (parametri website_page_cache.compress): faqet nga cache dalin përmes gzip (Content-Encoding: gzip, Vary: Accept-Encoding). Paketat e mëdha të assets (CSS dhe JavaScript, deri në disa MB) Odoo vetë i shërben të pakompresuara; moduli i kompreson një herë, e vendos kopjen në disk dhe pastaj e shërben drejtpërdrejt. Kështu nga 2,1 MB CSS u bënë 0,27 MB, nga 4,8 MB JavaScript 1,1 MB. Kopjet e vjetra i pastron puna e mirëmbajtjes.
  • Pas rinisjes së kompjuterit: cache në RAM mbetet kur riniset Odoo, por jo kur riniset serveri. Prandaj puna e mirëmbajtjes e pasqyron hap pas hapi në disk (parametri website_page_cache.persist) dhe e rikthen gjatë nisjes. Nëse një hyrje e rikthyer është ende e vlefshme, e kontrollon i njëjti mekanizëm si zakonisht: mosha dhe ditari i ndryshimeve. Minimizimi nuk rillogaritet gjatë kësaj.

Instalimi dhe cilësimet

  1. Merrni modulin: shkarkoni kodin burimor nga GitHub dhe vendoseni në një shteg addons të instalimit tuaj Odoo 19: github.com/Alex0176/odoo-website-page-cache
  2. Instaloni: odoo-bin -d <Datenbank> -i website_page_cache --stop-after-init. Gjatë kësaj krijohen ditari i ndryshimeve, trigjerët dhe puna e mirëmbajtjes (çdo 10 minuta).
  3. Rinisni shërbimin, që të gjitha proceset e punës ta ngarkojnë modulin.
  4. Hapni panelin e kontrollit: Faqja e internetit → Raporte → Cache e faqeve. Kontrolloni nëse gjurmimi i ndryshimeve është i plotë dhe zgjidhni vendin e ruajtjes (parazgjedhja: automatikisht).
  5. Kontrolloni: hapni dy herë një faqe dyqani ose blogu dhe shikoni headerin X-Page-Cache: herën e parë MISS, pastaj HIT.

Cilësimet ekzistojnë si parametra sistemi (website_page_cache.enabled, .backend, .ttl_hours, .max_mb_file, .max_mb_ram) dhe zakonisht mirëmbahen në panelin e kontrollit. Moduli është përkthyer në gjermanisht. Çinstalimi i heq përsëri plotësisht trigjerët, ditarin dhe të gjitha faqet e ruajtura në cache.

Këshillë për cache në RAM: buxheti i RAM-it në panelin e kontrollit dhe madhësia e tmpfs (/dev/shm, opsioni i montimit size=) duhet të përputhen me nevojën. Të dyja vlerat ju i tregon kontrolli „A nxihet në memorien operative?“ me vlera konkrete.

Kufizime që duhet t'i njihni

  • Vonesë e shkurtër pas ndryshimeve: indeksi i ditarit të ndryshimeve rifreskohet çdo dy sekonda. Një faqe e ndryshuar mund të shërbehet deri atëherë ende në versionin e vjetër.
  • Tekstet që varen nga stoku përditësohen përmes ndryshimeve të stokut dhe moshës maksimale.
  • Vlerësimi i nevojës për hapësirë: versionet shtesë sipas listës së çmimeve ose vendit nuk përfshihen; planifikoni pak rezervë.
  • Nuk zëvendëson gjithçka: cache e lehtëson kërkesat që lejohet t'i shërbejë. Përdoruesit e identifikuar, kërkimet dhe format vazhdojnë të kalojnë nëpër Odoo.
  • Kërkesa e parë mbetet e ngadaltë: pas rinisjes së serverit (RAM) ose pas një ndryshimi global, çdo faqe renderohet një herë normalisht përpara se të futet në cache.

Pyetje të shpeshta

Çfarë është cache e faqeve për Odoo?

Një modul me kod të hapur (website_page_cache, Odoo 19, LGPL-3) që i shërben faqet publike të dyqanit dhe të blogut vizitorëve anonimë nga një cache, në vend që t'i renderojë përsëri me çdo hapje. Cache ndodhet sipas zgjedhjes në skedarë ose në memorien operative.

A i bllokon moduli motorët e kërkimit ose crawlerët e IA-së?

Jo. Motorët e kërkimit dhe indeksuesit e IA-së marrin të njëjtat faqe si çdo vizitor tjetër, vetëm më shpejt. Nuk ka bllokim, nuk ka ngadalësim dhe nuk ka version të veçantë për crawlerët.

A ruhen automatikisht përsëri në cache faqet e ndryshuara dhe përkthimet?

Po. Trigjerët PostgreSQL e raportojnë çdo ndryshim të tabelave përkatëse në një ditar; faqet e prekura hidhen dhe në kërkesën tjetër renderohen përsëri dhe ruhen. Përkthimet janë të mbuluara, sepse Odoo 19 i ruan në të njëjtin regjistrim.

Të zgjedh skedar apo RAM?

Zakonisht Automatikisht: moduli përdor RAM për sa kohë që të gjitha faqet nxihen dhe përndryshe kalon te skedarët. Skedarët janë të përshtatshëm kur cache duhet të mbijetojë rinisjet ose kur RAM-i është i pakët; RAM-i është varianti më i shpejtë.

Si e kuptoj nëse faqja ime e internetit nxihet në memorien operative?

Në panelin e kontrollit te Faqja e internetit → Raporte → Cache e faqeve. Seksioni „A nxihet në memorien operative?“ numëron faqet sipas faqes së internetit dhe gjuhës, mat madhësinë e faqes dhe e krahason nevojën me buxhetin e RAM-it, madhësinë e tmpfs dhe memorien e disponueshme.

Sa RAM shtesë nevojitet për një cache në RAM?

Paneli i kontrollit e tregon si rresht të veçantë. Llogaritet: nevoja = faqe × madhësia e faqes; me rezervë sigurie pjesëtuar me 0,8. Meqë cache lejohet të përdorë më së shumti gjysmën e memories së disponueshme, dyfishi i kësaj është memoria e lirë e nevojshme; diferenca është RAM-i shtesë. Nëse është shumë i vogël vetëm buxheti i RAM-it ose tmpfs, paneli i kontrollit e tregon cilësimin bashkë me vlerën e synuar.

A mund t'i tregojë cache dikujt përmbajtje të huaja?

Jo. Ruhet në cache vetëm për kërkesat anonime GET pa parametra kërkimi. Përdoruesit e identifikuar, shportat, format dhe kërkimet nuk vijnë kurrë nga cache; gjuha, lista e çmimeve, pozicioni tatimor dhe pëlqimi për cookie janë pjesë e çelësit.

Si e çaktivizoj cache në raste emergjence?

Në panelin e kontrollit çaktivizoni çelësin „Aktiv“ ose vendoseni parametrin e sistemit website_page_cache.enabled në 0. Kjo vlen në të gjitha proceset e punës më së voni pas 30 sekondash. Çinstalimi heq gjithashtu trigjerët, ditarin dhe faqet e ruajtura në cache.

Nga e kuptoj nëse një faqe erdhi nga cache?

Nga headeri i përgjigjes X-Page-Cache: HIT do të thotë nga cache, MISS do të thotë e renderuar rishtas dhe e ruajtur.

A e zvogëlon moduli HTML dhe e kompreson?

Po. Faqet në cache minimizohen në mënyrë konservative (komentet dhe hapësirat e tepërta hiqen, përmbajtja dhe pamja mbeten të njëjta) dhe te goditjet e cache shërbehen përmes gzip; paketat e assets kompresohen një herë dhe shërbehen nga disku. Të dyja mund të çaktivizohen përmes parametrave website_page_cache.minify dhe website_page_cache.compress.

Mbështetje nga Biricon IT Services

Faqja juaj e internetit Odoo reagon ngadalë nën ngarkesën e crawlerëve, apo dëshironi ta bëni dyqanin dhe blogun më të shpejtë dhe më të dukshëm? Ju mbështesim me analizën e ngarkesës, me ngritjen e cache së faqeve, me dimensionimin e memories operative dhe të proceseve të punës dhe me optimizimin shumëgjuhësh për motorët e kërkimit të faqes suaj të internetit Odoo. Kodin burimor të modulit e gjeni në GitHub.

Na kontaktoni tani

Gjendja: 10 nëntor 2026. Vlerat e matura vijnë nga një sistem provë me të dhëna shembull dhe nuk përbëjnë garanci për instalime të tjera.