10. studenoga 2026. | Vlastiti razvoj | Odoo, performanse i tražilice
Odoo web-stranica pri svakom pozivu iznova renderira svaku stranicu: upiti u bazu podataka, predlošci, prijevodi, cijene. Za jednog posjetitelja to je neprimjetno. No kada tražilice i AI indekseri dohvaćaju stotine ili tisuće stranica na mnogo jezika, to postaje trajno opterećenje, a čekaju i pravi kupci. Zato smo razvili modul za Odoo 19 website_page_cache i objavili ga na GitHubu kao otvoreni kod (LGPL-3): anonimno pozvane stranice trgovine i bloga isporučuju se gotovo kao statički sadržaj iz predmemorije, bilo iz datoteka bilo iz radne memorije (RAM), a svaka promjena – uključujući prijevod – automatski uklanja pogođene stranice iz predmemorije.
Važno za sve koji žele biti pronađeni: modul ne blokira nijednu tražilicu ni AI crawler. Svi indekseri dobivaju isti sadržaj kao i svaki posjetitelj, samo brže. Ovaj članak objašnjava kako predmemorija radi, kako izgleda nadzorna ploča (sa snimkama zaslona), kako prepoznati stanu li vaše stranice u radnu memoriju i koliko bi dodatnog RAM-a bilo potrebno, koja sigurnosna pravila vrijede i kako instalirati modul.
Sadržaj ovog članka
- Sažetak
- Problem: opterećenje crawlera na Odoo web-stranicama
- Kako radi predmemorija stranica
- Datoteka ili RAM: odabir mjesta pohrane
- Stane li web-stranica u radnu memoriju? I koliko RAM-a nedostaje?
- Promjene i prijevodi čiste predmemoriju
- Nadzorna ploča i statistika
- Sigurnost: što nikada ne dolazi iz predmemorije
- Tražilice i AI indekseri: ništa se ne blokira
- Minimiziranje HTML-a i isporuka u komprimiranom obliku
- Instalacija i postavke
- Ograničenja koja trebate znati
- Često postavljana pitanja
- Podrška tvrtke Biricon IT Services
Sažetak
| Tema | Vrijedi |
|---|---|
| Modul | website_page_cache za Odoo 19, licenca LGPL-3, javno na GitHubu |
| Što se sprema u predmemoriju? | Javne stranice trgovine i bloga (popisi, kategorije, proizvodi, članci) na svakom jeziku svake web-stranice |
| Za koga? | Samo za anonimne posjetitelje, samo GET pozivi bez parametara pretraživanja, samo status 200 s HTML-om |
| Mjesto pohrane | Datoteke na disku ili RAM (tmpfs, dijele ga svi radni procesi); automatski prema potrebnom prostoru |
| Ažurnost | Svaka promjena (i prijevodi, uvozi, skripte) putem okidača baze podataka stvara zapis u dnevniku i poništava pogođene stranice |
| Nadzorna ploča | Postavke, status, statistika (pogodci, promašaji, ušteđeno vrijeme poslužitelja) i provjera „Stane li u radnu memoriju?“ uključujući podatak „dodatno potrebni RAM“ |
| Tražilice i AI | Ništa se ne blokira niti usporava; svi dobivaju iste stranice, samo brže |
| Kočnica za nuždu | Jedan prekidač (enabled = 0) isključuje predmemoriju u svim radnim procesima u roku od 30 sekundi |
Problem: opterećenje crawlera na Odoo web-stranicama
Odoo je potpun ERP sustav, a web-stranica je jedan od njegovih mnogih modula. Svaka stranica koju pozove posjetitelj ili robot prolazi isti put: obrada zahtjeva, upit u bazu podataka, učitavanje podataka o proizvodima i cijenama, renderiranje QWeb predloška, umetanje prijevoda i isporuka rezultata. Ovisno o stranici to traje nekoliko stotina milisekundi i za to vrijeme zauzima jedan od malobrojnih radnih procesa.
Za tražilice i AI indeksere to je stalna tema:
- Mnogo jezika, mnogo adresa: stranica dostupna na 46 jezika za crawler je 46 različitih adresa.
- Svaka se adresa dohvaća zasebno, često od mnogo raspodijeljenih pošiljatelja istodobno. Klasična predmemorija preglednika ovdje ne pomaže jer se svaki poziv odnosi na novu adresu.
- Malo radnih procesa: Odoo servis obično radi s nekoliko procesa. Ako su zauzeti zahtjevima crawlera, pravi posjetitelji čekaju u redu.
- Isti sadržaj, uvijek iznova: blog članak rijetko se mijenja, ali se pri svakom pozivu iznova složeno sastavlja.
Očiti izlaz – isključiti crawlere – za tvrtku koja želi biti pronađena nije opcija. Vidljivost u tražilicama i AI odgovorima vrijedna je. Bolje je stranice isporučivati tako brzo da opterećenje jedva dolazi do izražaja. Upravo to radi predmemorija stranica.
Kako radi predmemorija stranica
Modul se priključuje na ulaz zahtjeva u Odoou (ir.http). Pri svakom pozivu stranice u djeliću milisekunde odlučuje smije li stranica doći iz predmemorije te je tada isporučuje bez baze podataka, bez predloška i bez renderiranja.
- Provjera: u obzir dolazi samo anonimni
GETpoziv bez parametara pretraživanja na dopuštenoj putanji (trgovina, kategorije, proizvodi, blog). Sve ostalo prolazi kroz Odoo kao i uvijek. - Ključ predmemorije: sastoji se od web-stranice, klase hosta, jezika, putanje, cjenika, fiskalne pozicije i statusa pristanka na kolačiće. Posjetitelji koji bi vidjeli nešto drugo stoga nikada ne dijele isti zapis. Host se pritom normalizira: Odoo apsolutne adrese uvijek ispisuje iz domene web-stranice, a ne iz zahtjeva; adresa zahtjeva odlučuje samo vrijedi li stranica kao glavna adresa (jezične reference) i treba li je indeksirati. Svi se strani nazivi hostova stoga dijele jedan zapis s napomenom
noindexumjesto da svaki zauzima vlastitu kopiju. - Pogodak: ako postoji aktualan zapis, isporučuje se. CSRF token u stranici pritom se postavlja iznova za svaki zahtjev. Pozivi blog članaka i dalje se broje.
- Promašaj: ako zapisa nema ili je zastario, Odoo renderira stranicu kao i obično. Ako se rezultat smije spremiti u predmemoriju (status 200, HTML, bez kolačića, bez ID-a sesije u tekstu), sprema se; sljedeći poziv je pogodak.
- Vidljivo u zaglavlju: svaki odgovor nosi zaglavlje
X-Page-Cache: HITiliMISS. Tako se bilo kojim alatom može provjeriti što se dogodilo.
Koliko brže?
U našem testnom sustavu (kopija naših web-stranica, nekoliko stotina stranica) prosječno vrijeme renderiranja stranice bilo je oko 490 milisekundi, a isporuka iz predmemorije oko 23 milisekunde: otprilike dvadeset puta brže. Što je stranica složenija, to je dobitak veći. Nadzorna ploča iz obje vrijednosti dodatno izračunava procijenjeno ušteđeno vrijeme poslužitelja.
Datoteka ili RAM: odabir mjesta pohrane
Predmemorija poznaje dva mjesta pohrane. Oba su zajednički vidljiva svim Odoo radnim procesima, pa svaka stranica postoji samo jednom, a ne jednom po procesu.
| Postavka | Gdje se nalaze stranice? | Svojstva |
|---|---|---|
| Datoteke | Direktorij u Odoo mapi s podacima, po bazi podataka | preživljava ponovna pokretanja; operacijski sustav ionako često korištene stranice drži u memoriji |
| Radna memorija | tmpfs pod /dev/shm | najbrža isporuka; gubi se pri ponovnom pokretanju poslužitelja i jednostavno se ponovno gradi |
| Automatski | RAM dok god sve stane; inače datoteke | Servisni zadatak (svakih 10 minuta) odlučuje na temelju procjene; kod „stane“ i „tijesno“ ostaje na RAM-u kako izbor ne bi stalno mijenjao |
Za većinu instalacija Automatski je pravi izbor: dobivate brzinu RAM-a kada ima mjesta, a inače se bez intervencije vraćate na datoteke.
Stane li web-stranica u radnu memoriju? I koliko RAM-a nedostaje?
Je li RAM predmemorija moguća, ovisi o tri stvari: o broju stranica, o njihovoj prosječnoj veličini i o raspoloživoj memoriji. Nadzorna ploča to izračunava za vas:
- Broj stranica: po web-stranici broji objavljene proizvode, stranice popisa trgovine, kategorije, blog članke i popise bloga te množi s brojem jezika.
- Veličina stranice: čim se stranice nađu u predmemoriji, mjeri se stvarni prosjek; do tada vrijedi pretpostavljena vrijednost.
- Prostor za predmemoriju: najmanja vrijednost od postavljenog RAM proračuna, veličine tmpfs-a i polovice raspoložive radne memorije. Poslužitelj zbog predmemorije nikada ne smije zapasti u nestašicu memorije.
- Ocjena: „stane s rezervom“, „tijesno“, „preveliko“ ili „RAM predmemorija nije dostupna“. „Stane“ vrijedi kada potreba iznosi najviše 80 posto raspoloživog prostora.
Novo: koliko bi dodatnog RAM-a bilo potrebno?
Ako predmemorija ne stane, želi se znati što treba promijeniti. Nadzorna ploča stoga ispod ocjene navodi konkretan redak: „Dodatni RAM za RAM predmemoriju: otprilike … više radne memorije na ovom poslužitelju” – ili „nikakav” ako prostora već ima dovoljno. Ako je umjesto poslužitelja premalena samo neka postavka, ispod stoji koja: RAM proračun modula ili veličina tmpfs-a (/dev/shm).
Račun koji stoji iza toga jednostavan je i razumljiv:
- Potreba = stranice × prosječna veličina stranice.
- S rezervom = potreba podijeljena s 0,8. Ta vrijednost mora stati u RAM proračun i u tmpfs da bi ocjena glasila „stane“.
- Slobodna memorija: budući da predmemorija smije koristiti najviše polovicu raspoložive radne memorije, poslužitelju je kao slobodna memorija potrebno najmanje dvostruko više od vrijednosti iz koraka 2. Ako nešto nedostaje, razlika je dodatno potreban RAM.
Primjer na slici (12.000 stranica po 25 KB) pomoć je pri izračunu, a ne mjerenje naših stranica. Za male web-stranice dovoljno je nekoliko desetaka megabajta; ogledni podaci na snimkama zaslona stali su u oko 13 MB.
Važno za procjenu: procjena ne broji dodatne inačice po cjeniku ili državi. Tko ih koristi mnogo, neka planira malu rezervu. I još nešto: premalen RAM proračun najčešći je razlog zašto automatika ostaje na datotekama – a ne nedostatak radne memorije. Nadzorna ploča u tom slučaju prikazuje upravo taj redak.
Promjene i prijevodi čiste predmemoriju
Predmemorija je upotrebljiva samo ako nikada ne isporučuje zastarjele stranice. Puko vremensko ograničenje („odbaciti svakih dvanaest sati“) bilo bi preoštro: promijenjena cijena ili ispravljena tiskarska pogreška morali bi čekati do dvanaest sati. Modul stoga radi prema sadržaju.
- Okidači baze podataka: na svim tablicama koje mogu utjecati na stranicu (proizvodi, varijante, slike, zalihe, atributi, kategorije, cijene, porezi, cjenici, blog članci i oznake, podaci o partnerima i tvrtkama, prikazi, assets, izbornici, jezici, postavke web-stranice) nalaze se PostgreSQL okidači. Oni svaku promjenu upisuju u dnevnik promjena.
- Ovisnosti i stanje baze podataka: svaka stranica u predmemoriji pamti koje zapise prikazuje i stanje baze podataka s kojim je generirana.
- Usporedba: ako postoji zapis u dnevniku koji je nastao nakon tog stanja i odnosi se na jedan od tih zapisa, stranica je zastarjela.
- Ponovno spremanje: pri sljedećem pozivu zastarjela se stranica odbacuje, ponovno renderira i ponovno sprema.
Pokriveni su i prijevodi
Odoo 19 prevedene tekstove pohranjuje u istom zapisu kao i izvorni tekst (kao JSON polje). Promijenjeni prijevod stoga je za bazu podataka sasvim obična promjena retka – i okidač je vidi. To jednako vrijedi za uređivanje putem sučelja, za uvoze, za sučelja i za skripte koje pišu izravno u bazu podataka. Automatski prijevod na 46 jezika stoga poništava upravo one stranice kojima se tekst promijenio, i ništa više.
- Ciljano umjesto paušalno: promijenjeni proizvod poništava svoje stranice, popise u kojima se nalazi i pripadajuću kategoriju. Ostalo ostaje u predmemoriji.
- Globalne promjene (predlošci, assets, jezici, izbornici, porezi, valute) poništavaju sve odjednom jer mogu utjecati na svaku stranicu.
- Brojila ostaju po strani: brojilo poziva blog članaka mijenja se pri svakom posjetu; ono namjerno ne pokreće poništavanje, inače bi predmemorija kod popularnih članaka bila bez učinka.
- Sigurnosna mreža: dodatno postoji najveća starost po stranici (zadano 12 sati).
- Nema pogreške pisanja zbog predmemorije: pogreška unutar okidača bilježi se kao upozorenje i ne uzrokuje neuspjeh samog spremanja.
Nadzorna ploča i statistika
Sve što vam treba za rad nalazi se na jednom mjestu: u Odoou pod Web-stranica → Izvješća → Predmemorija stranica. Odjeljak Pregled je nadzorna ploča (s postavkama), a odjeljak Tijek prikazuje brojke po danu i web-stranici.
Snimka zaslona iz testnog sustava s kopijama naših web-stranica; nazivi web-stranica zamijenjeni su rezerviranim oznakama.
Postavke
| Postavka | Značenje |
|---|---|
| Aktivno | Glavni prekidač. Kada je isključen, Odoo opet isporučuje svaku stranicu kao i prije, u svim procesima najkasnije nakon 30 sekundi. |
| Mjesto pohrane | Automatski, datoteke ili radna memorija |
| Najveća starost (sati) | Sigurnosna mreža; stranice se obnavljaju nakon tog vremena neovisno o promjenama |
| RAM proračun (MB) | Najviše toliko radne memorije smije zauzeti RAM predmemorija; ujedno granica za ocjenu „stane“ |
| Ograničenje diska (MB) | Najveća veličina predmemorije datoteka; najstariji zapisi uklanjaju se prvi |
Status i statistika
Status prikazuje aktivno mjesto pohrane s njegovom granicom, broj i veličinu stranica u predmemoriji te praćenje promjena: koliko je promjena zabilježeno u posljednja 24 sata i koliko se tablica nadzire. Ako nadzor nedostaje, nadzorna ploča jasno upozorava, jer se tada predmemoriji ne smije vjerovati. Gumbi na vrhu omogućuju da se održavanje odmah izvrši, predmemorija isprazni ili okidači provjere i po potrebi ponovno stvore.
Statistika (Danas, 7 dana, 30 dana) sadrži:
- Iz predmemorije i Renderirano: pogodci i promašaji, iz njih omjer pogodaka
- Uklonjeno (promijenjeno/isteklo): koliko je stranica odbačeno zbog promjene ili isteka
- Vrijeme renderiranja i vrijeme predmemorije: usporedba prosjeka po stranici
- Procijenjeno ušteđeno vrijeme poslužitelja i količina podataka iz predmemorije
Brojke svaki radni proces skuplja za sebe i upisuje jednom u minuti; retke starije od 90 dana briše servisni zadatak.
Tijek kao dijagram, pivot i popis
Pod Tijek dostupne su dnevne vrijednosti po web-stranici – kao dijagram, kao pivot tablica ili kao popis. Tako vidite raste li omjer pogodaka ponovno nakon ponovnog pokretanja ili velike promjene i koja web-stranica iz predmemorije dobiva najviše prometa.
Sigurnost: što nikada ne dolazi iz predmemorije
Predmemorija stranica nikada ne smije dovesti do toga da netko vidi tuđe sadržaje. Modul stoga slijedi načelo: u sumnji ne spremati u predmemoriju.
- Samo anonimni posjetitelji: tko je prijavljen, ima košaricu ili donosi neko drugo stanje sesije, uvijek dobiva normalno renderiranu stranicu.
- Samo
GETbez parametara pretraživanja: pretraživanja, filtri, sortiranja, obrasci, košarica i blagajna ostaju netaknuti. - Samo status 200 i HTML: stranice s pogreškama, preusmjeravanja i datoteke ne spremaju se.
- Nema ID-ova sesije u predmemoriji: stranica koja sadrži ID sesije ili postavlja kolačić ne sprema se (i bilježi se kao upozorenje).
- CSRF token po zahtjevu: token u stranici u predmemoriji rezervirana je oznaka i pri svakoj se isporuci umeće iznova.
- Fini ključ: web-stranica, jezik, cjenik, fiskalna pozicija i pristanak na kolačiće čine dio ključa predmemorije; tko vidi nešto drugo, dobiva drugi zapis.
- Više baza podataka: svaka baza podataka ima vlastite zapise, vlastiti dnevnik i vlastitu statistiku.
- Nema curenja podataka: predmemorija se nalazi lokalno na poslužitelju (datoteka ili RAM). Podaci se ne prenose trećim stranama.
Tražilice i AI indekseri: ništa se ne blokira
Neki operateri na opterećenje crawlera reagiraju blokadama. To štiti poslužitelj, ali košta vidljivosti. Modul bira suprotan put:
- Isti sadržaji za sve: tražilice, AI indekseri i posjetitelji dobivaju istu stranicu. Ne postoji posebna „crawler inačica“ niti prepoznavanje prema oznaci preglednika.
- Brži odgovori pomažu indeksiranju: stranica koja odgovara u 20 umjesto 500 milisekundi manje opterećuje proračun indeksiranja (crawl budget), a crawleri u istom vremenu mogu obuhvatiti više stranica.
- Aktualni sadržaji: budući da promjene odmah poništavaju stranice, crawleri nikada ne vide zastarjelu inačicu – važno ako održavate sadržaje za pretraživanje i AI odgovore.
- Strukturirani podaci se zadržavaju: JSON-LD, meta podaci i
hreflangreference dio su stranice u predmemoriji; sitemape i datoteke predmemorija ne dira.
Ako dodatno želite ograničiti opterećenje, to je zasebna odluka koju možete svjesno donijeti – modul vam je ne nameće.
Minimiziranje HTML-a i isporuka u komprimiranom obliku
Predmemorija ne štedi samo vrijeme računanja, nego i količinu podataka. Modul minimizira HTML prije spremanja i isporučuje ga komprimiranog ako to preglednik ili crawler nudi:
- Minimiziranje (parametar
website_page_cache.minify): HTML komentari se izostavljaju, razmaci se objedinjuju. Potpuno se uklanjaju samo ondje gdje ih preglednik ionako zanemaruje, primjerice između blok elemenata. Razmaci između inline elemenata ostaju,pre,textareai skripte ostaju nepromijenjeni, a strukturirani podaci (JSON-LD) ponovno se zapisuju kompaktno. Ovisno o stranici, stranice su 10 do 30 % manje. U testu sa sedam pravih stranica tekst, broj elemenata, položaj svih elemenata i snimka zaslona bili su identični izvorniku. Prva isporuka (MISS) minimizirana je jednako kao i svaka sljedeća (HIT). - Komprimiranje (parametar
website_page_cache.compress): stranice iz predmemorije šalju se putem gzipa (Content-Encoding: gzip,Vary: Accept-Encoding). Velike pakete assetsa (CSS i JavaScript, do nekoliko MB) Odoo sam isporučuje nekomprimirane; modul ih komprimira jednom, kopiju odlaže na disk i zatim ih isporučuje izravno. Tako je od 2,1 MB CSS-a nastalo 0,27 MB, a od 4,8 MB JavaScripta 1,1 MB. Stare kopije čisti servisni zadatak. - Nakon ponovnog pokretanja računala: RAM predmemorija ostaje sačuvana pri ponovnom pokretanju Odooa, ali ne i pri ponovnom pokretanju poslužitelja. Zato je servisni zadatak postupno zrcali na disk (parametar
website_page_cache.persist) i vraća pri pokretanju. Je li vraćeni zapis još valjan, provjerava isti mehanizam kao i inače: starost i dnevnik promjena. Minimiziranje se pritom ne računa iznova.
Instalacija i postavke
- Nabaviti modul: preuzeti izvorni kod s GitHuba i staviti ga u putanju addonsa vaše Odoo 19 instalacije: github.com/Alex0176/odoo-website-page-cache
- Instalirati:
odoo-bin -d <Datenbank> -i website_page_cache --stop-after-init. Pritom nastaju dnevnik promjena, okidači i servisni zadatak (svakih 10 minuta). - Ponovno pokrenuti servis kako bi svi radni procesi učitali modul.
- Otvoriti nadzornu ploču: Web-stranica → Izvješća → Predmemorija stranica. Provjeriti je li praćenje promjena potpuno i odabrati mjesto pohrane (zadano: automatski).
- Provjeriti: dvaput pozvati stranicu trgovine ili bloga i pogledati zaglavlje
X-Page-Cache: prvi putMISS, nakon togaHIT.
Postavke postoje kao sistemski parametri (website_page_cache.enabled, .backend, .ttl_hours, .max_mb_file, .max_mb_ram) i obično se održavaju na nadzornoj ploči. Modul je preveden na njemački. Deinstalacija ponovno u potpunosti uklanja okidače, dnevnik i sve stranice u predmemoriji.
Savjet za RAM predmemoriju: RAM proračun na nadzornoj ploči i veličina tmpfs-a (/dev/shm, opcija montiranja size=) moraju odgovarati potrebi. Oboje vam navodi provjera „Stane li u radnu memoriju?“ s konkretnim vrijednostima.
Ograničenja koja trebate znati
- Kratko kašnjenje nakon promjena: indeks dnevnika promjena osvježava se svake dvije sekunde. Do tada se promijenjena stranica još može isporučiti u staroj inačici.
- Tekstovi ovisni o zalihama ažuriraju se putem promjena zaliha i najveće starosti.
- Procjena potrebnog prostora: dodatne inačice po cjeniku ili državi nisu uračunate; planirajte malu rezervu.
- Nije zamjena za sve: predmemorija rasterećuje zahtjeve koje smije posluživati. Prijavljeni korisnici, pretraživanja i obrasci i dalje prolaze kroz Odoo.
- Prvi poziv ostaje spor: nakon ponovnog pokretanja poslužitelja (RAM) ili globalne promjene svaka se stranica jednom normalno renderira prije nego što se nađe u predmemoriji.
Često postavljana pitanja
Što je predmemorija stranica za Odoo?
Modul otvorenog koda (website_page_cache, Odoo 19, LGPL-3) koji javne stranice trgovine i bloga za anonimne posjetitelje isporučuje iz predmemorije umjesto da ih pri svakom pozivu iznova renderira. Predmemorija se po izboru nalazi u datotekama ili u radnoj memoriji.
Blokira li modul tražilice ili AI crawlere?
Ne. Tražilice i AI indekseri dobivaju iste stranice kao i svaki drugi posjetitelj, samo brže. Nema blokade, nema usporavanja i nema posebne inačice za crawlere.
Hoće li se promijenjene stranice i prijevodi automatski ponovno spremiti u predmemoriju?
Da. PostgreSQL okidači svaku promjenu relevantnih tablica prijavljuju dnevniku; pogođene se stranice odbacuju te se pri sljedećem pozivu ponovno renderiraju i spremaju. Prijevodi su pokriveni jer ih Odoo 19 pohranjuje u istom zapisu.
Trebam li odabrati datoteku ili RAM?
U pravilu Automatski: modul koristi RAM dok god sve stranice stanu, a inače prelazi na datoteke. Datoteke su prikladne ako predmemorija treba preživjeti ponovna pokretanja ili ako je RAM oskudan; RAM je najbrža varijanta.
Kako saznati stane li moja web-stranica u radnu memoriju?
Na nadzornoj ploči pod Web-stranica → Izvješća → Predmemorija stranica. Odjeljak „Stane li u radnu memoriju?“ broji stranice po web-stranici i jeziku, mjeri veličinu stranice i uspoređuje potrebu s RAM proračunom, veličinom tmpfs-a i raspoloživom memorijom.
Koliko je dodatnog RAM-a potrebno za RAM predmemoriju?
Nadzorna ploča to navodi u zasebnom retku. Računa se ovako: potreba = stranice × veličina stranice; sa sigurnosnom rezervom podijeljeno s 0,8. Budući da predmemorija smije koristiti najviše polovicu raspoložive memorije, dvostruko toliko je potrebna slobodna memorija; razlika je dodatni RAM. Ako je premalen samo RAM proračun ili tmpfs, nadzorna ploča navodi postavku zajedno s ciljnom vrijednošću.
Može li predmemorija nekome pokazati tuđe sadržaje?
Ne. U predmemoriju se sprema samo za anonimne GET pozive bez parametara pretraživanja. Prijavljeni korisnici, košarice, obrasci i pretraživanja nikada ne dolaze iz predmemorije; jezik, cjenik, fiskalna pozicija i pristanak na kolačiće dio su ključa.
Kako isključiti predmemoriju u slučaju nužde?
Na nadzornoj ploči isključite prekidač „Aktivno“ ili postavite sistemski parametar website_page_cache.enabled na 0. To vrijedi u svim radnim procesima najkasnije nakon 30 sekundi. Deinstalacija dodatno uklanja okidače, dnevnik i stranice u predmemoriji.
Kako prepoznati je li stranica došla iz predmemorije?
Po zaglavlju odgovora X-Page-Cache: HIT znači iz predmemorije, MISS znači svježe renderirano i spremljeno.
Smanjuje li modul HTML i komprimira li ga?
Da. Stranice u predmemoriji konzervativno se minimiziraju (komentari i suvišni razmaci izostavljaju se, sadržaj i prikaz ostaju isti), a pri pogocima predmemorije isporučuju se putem gzipa; paketi assetsa komprimiraju se jednom i isporučuju s diska. Oboje se može isključiti parametrima website_page_cache.minify i website_page_cache.compress.
Podrška tvrtke Biricon IT Services
Vaša Odoo web-stranica reagira sporo pod opterećenjem crawlera ili želite da trgovina i blog budu brži i vidljiviji? Podržavamo vas u analizi opterećenja, postavljanju predmemorije stranica, dimenzioniranju radne memorije i radnih procesa i višejezičnoj optimizaciji za tražilice vaše Odoo web-stranice. Izvorni kod modula pronaći ćete na GitHubu.
Stanje: 10. studenoga 2026. Izmjerene vrijednosti potječu iz testnog sustava s oglednim podacima i nisu obećanje za druge instalacije.