10. novembar 2026. | Vlastiti razvoj | Odoo, performanse i tražilice
Odoo web stranica svaku stranicu iznova renderuje pri svakom pozivu: upiti prema bazi podataka, šabloni, prijevodi, cijene. Za jednog posjetioca to je neprimjetno. Ali kada tražilice i AI indekseri preuzimaju stotine ili hiljade stranica na mnogo jezika, to postaje trajno opterećenje, a s njim čekaju i pravi kupci. Zato smo razvili Odoo 19 modul website_page_cache i objavili ga na GitHubu kao Open Source (LGPL-3): anonimno pozvane stranice shopa i bloga isporučuju se gotovo statički iz keša, bilo iz datoteka bilo iz radne memorije (RAM), a svaka izmjena – uključujući i izmjenu prijevoda – automatski uklanja zahvaćene stranice iz keša.
Važno za sve koji žele biti pronađeni: modul ne blokira nijednu tražilicu niti AI crawler. Svi indekseri dobijaju isti sadržaj kao i svaki posjetilac, samo brže. Ovaj članak objašnjava kako keš radi, kako izgleda dashboard (sa snimcima ekrana), kako prepoznati da li vaše stranice staju 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 keš stranica
- Datoteka ili RAM: izbor lokacije pohrane
- Staje li web stranica u radnu memoriju? I koliko RAM-a nedostaje?
- Izmjene i prijevodi čiste keš
- Dashboard i statistika
- Sigurnost: šta nikada ne dolazi iz keša
- Tražilice i AI indekseri: ništa se ne blokira
- Minimiziranje HTML-a i komprimirana isporuka
- Instalacija i postavke
- Ograničenja koja trebate znati
- Česta pitanja
- Podrška Biricon IT Services
Sažetak
| Tema | Ovo vrijedi |
|---|---|
| Modul | website_page_cache za Odoo 19, licenca LGPL-3, javno na GitHubu |
| Šta se kešira? | Javne stranice shopa i bloga (liste, kategorije, proizvodi, članci) na svakom jeziku svake web stranice |
| Za koga? | Samo za anonimne posjetioce, samo GET pozive bez parametara pretrage, samo status 200 s HTML-om |
| Lokacija pohrane | Datoteke na disku ili RAM (tmpfs, dijele ga svi radni procesi); automatski prema potrebnom prostoru |
| Ažurnost | Svaka izmjena (i prijevodi, uvozi, skripte) putem okidača baze podataka stvara zapis u dnevniku i poništava zahvaćene stranice |
| Dashboard | Postavke, status, statistika (pogoci, promašaji, ušteđeno vrijeme servera) i provjera „Staje li u radnu memoriju?“ uključujući „dodatno potreban RAM“ |
| Tražilice i AI | Ništa se ne blokira niti usporava; svi dobijaju iste stranice, samo brže |
| Kočnica za slučaj nužde | Jedan prekidač (enabled = 0) isključuje keš u svim radnim procesima u roku od 30 sekundi |
Problem: opterećenje crawlera na Odoo web stranicama
Odoo je potpun ERP sistem, a web stranica je samo jedan od mnogih modula. Svaka stranica koju pozove posjetilac ili robot prolazi isti put: obrada zahtjeva, upit prema bazi podataka, učitavanje podataka o proizvodima i cijenama, renderovanje QWeb šablona, umetanje prijevoda i isporuka rezultata. To traje, ovisno o stranici, nekoliko stotina milisekundi i za to vrijeme zauzima jedan od malobrojnih radnih procesa.
Za tražilice i AI indeksere to je trajna tema:
- Mnogo jezika, mnogo adresa: stranica koja postoji na 46 jezika za crawler je 46 različitih adresa.
- Svaka adresa se preuzima zasebno, često od mnogo raspoređenih pošiljalaca istovremeno. Klasični keš preglednika tu ne pomaže jer se svaki poziv odnosi na novu adresu.
- Malo radnih procesa: Odoo servis obično radi s šačicom procesa. Ako su zauzeti zahtjevima crawlera, pravi posjetioci čekaju u redu.
- Isti sadržaj, uvijek iznova: članak na blogu rijetko se mijenja, ali se pri svakom pozivu iznova skupa uz veliki trud.
Očigledan izlaz – zaključati crawlere – za firmu koja želi biti pronađena nije opcija. Vidljivost u tražilicama i u AI odgovorima je vrijedna. Bolje je stranice isporučivati tako brzo da opterećenje jedva da je primjetno. Upravo to radi keš stranica.
Kako radi keš stranica
Modul se kači na ulaz zahtjeva u Odoo (ir.http). Pri svakom pozivu stranice u djeliću milisekunde odlučuje smije li stranica doći iz keša, a zatim je isporučuje bez baze podataka, bez šablona i bez renderovanja.
- Provjera: u obzir dolazi samo anoniman
GETpoziv bez parametara pretrage na dozvoljenoj putanji (shop, kategorije, proizvodi, blog). Sve ostalo prolazi kroz Odoo kao i uvijek. - Ključ keša: sastoji se od web stranice, klase hosta, jezika, putanje, cjenovnika, fiskalne pozicije i statusa pristanka na kolačiće. Posjetioci koji bi vidjeli nešto drugo stoga nikada ne dijele isti unos. Host se pritom normalizira: Odoo apsolutne adrese uvijek piše iz domene web stranice, a ne iz zahtjeva; adresa zahtjeva samo odlučuje smatra li se stranica glavnom adresom (jezične reference) i treba li biti indeksirana. Svi strani nazivi hosta stoga dijele jedan unos zajedno s napomenom
noindex, umjesto da svaki zauzima vlastitu kopiju. - Pogodak: ako postoji aktuelan unos, isporučuje se. CSRF token u stranici se pritom postavlja iznova za svaki zahtjev. Pozivi blog članaka i dalje se broje.
- Promašaj: ako unos nedostaje ili je zastario, Odoo renderuje stranicu kao i obično. Ako se rezultat smije keširati (status 200, HTML, bez kolačića, bez ID-a sesije u tekstu), pohranjuje 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 šta se dogodilo.
Koliko brže?
U našem testnom sistemu (kopija naših web stranica, nekoliko stotina stranica) prosječno vrijeme renderovanja stranice bilo je oko 490 milisekundi, a isporuka iz keša oko 23 milisekunde: otprilike dvadeset puta brže. Što je stranica složenija, to je dobitak veći. Dashboard iz obje vrijednosti dodatno izračunava procijenjeno ušteđeno vrijeme servera.
Datoteka ili RAM: izbor lokacije pohrane
Keš poznaje dvije lokacije pohrane. Obje su zajednički vidljive svim Odoo radnim procesima, pa svaka stranica postoji samo jednom, a ne po jednom za svaki proces.
| Postavka | Gdje se nalaze stranice? | Svojstva |
|---|---|---|
| Datoteke | Direktorij u Odoo podatkovnom folderu, po bazi podataka | preživljava ponovna pokretanja; operativni sistem ionako često korištene stranice drži u memoriji |
| Radna memorija | tmpfs pod /dev/shm | najbrža isporuka; gubi se pri ponovnom pokretanju servera i jednostavno se ponovo izgradi |
| Automatski | RAM dok sve staje; inače datoteke | Posao održavanja (svakih 10 minuta) odlučuje na osnovu procjene; pri statusima „staje“ i „tijesno“ ostaje na RAM-u kako izbor ne bi stalno mijenjao |
Za većinu instalacija je Automatski pravi izbor: dobijate brzinu RAM-a kada ima mjesta, a inače se bez intervencije vraćate na datoteke.
Staje li web stranica u radnu memoriju? I koliko RAM-a nedostaje?
Je li RAM keš moguć, ovisi o tri stvari: o broju stranica, o njihovoj prosječnoj veličini i o raspoloživoj memoriji. Dashboard to izračunava umjesto vas:
- Broj stranica: po web stranici broji objavljene proizvode, stranice liste shopa, kategorije, blog članke i blog liste te množi s brojem jezika.
- Veličina stranice: čim se stranice nađu u kešu, mjeri se stvarni prosjek; do tada vrijedi pretpostavljena vrijednost.
- Prostor za keš: najmanja vrijednost od podešenog RAM budžeta, veličine tmpfs-a i polovine raspoložive radne memorije. Server zbog keša nikada ne smije zapasti u nestašicu memorije.
- Ocjena: „staje s rezervom“, „tijesno“, „preveliko“ ili „RAM keš nije dostupan“. „Staje“ vrijedi ako potreba iznosi najviše 80 posto raspoloživog prostora.
Novo: koliko dodatnog RAM-a bi bilo potrebno?
Ako keš ne staje, želi se znati šta treba promijeniti. Zato dashboard ispod ocjene navodi konkretan red: „Dodatni RAM za RAM keš: otprilike … više radne memorije na ovom serveru“ – ili „nijedan“, ako prostora već ima dovoljno. Ako je umjesto servera premalena samo jedna postavka, ispod stoji koja: RAM budžet modula ili veličina tmpfs-a (/dev/shm).
Proračun iza toga je jednostavan i razumljiv:
- Potreba = stranice × prosječna veličina stranice.
- S rezervom = potreba podijeljena s 0,8. Ova vrijednost mora stati u RAM budžet i u tmpfs da bi ocjena glasila „staje“.
- Slobodna memorija: budući da keš smije koristiti najviše polovinu raspoložive radne memorije, serveru je potrebno barem dvostruko više od vrijednosti iz koraka 2 kao slobodno raspoloživa memorija. Ako nešto nedostaje, razlika je dodatno potreban RAM.
Primjer na slici (12.000 stranica po 25 KB) je pomoć pri računanju, a ne mjerenje naših stranica. Za male web stranice dovoljno je nekoliko desetaka megabajta; uzorci podataka na snimcima ekrana zadovoljili su se s oko 13 MB.
Važno za procjenu: procjena ne broji dodatne verzije po cjenovnicima ili zemljama. Ko ih koristi mnogo, neka planira malu rezervu. I još nešto: premali RAM budžet najčešći je razlog zašto automatika ostaje na datotekama – a ne nedostatak radne memorije. Dashboard u tom slučaju prikazuje upravo taj red.
Izmjene i prijevodi čiste keš
Keš je upotrebljiv samo ako nikada ne isporučuje zastarjele stranice. Puko vremensko ograničenje („odbaci svakih dvanaest sati“) bilo bi pogrubo: izmijenjena cijena ili ispravljena greška u kucanju morali bi čekati do dvanaest sati. Zato modul radi prema sadržaju.
- Okidači baze podataka: na svim tabelama koje mogu utjecati na stranicu (proizvodi, varijante, slike, zalihe, atributi, kategorije, cijene, porezi, cjenovnici, blog članci i oznake, podaci o partnerima i firmama, prikazi, asseti, meniji, jezici, postavke web stranice) nalaze se PostgreSQL okidači. Oni svaku izmjenu upisuju u dnevnik izmjena.
- Zavisnosti i stanje baze podataka: svaka keširana stranica pamti koje zapise prikazuje i stanje baze podataka s kojim je generisana.
- Poređenje: ako postoji zapis u dnevniku koji je nastao nakon tog stanja i odnosi se na jedan od tih zapisa, stranica je zastarjela.
- Ponovno keširanje: pri sljedećem pozivu zastarjela stranica se odbacuje, iznova renderuje i ponovo pohranjuje.
I prijevodi su obuhvaćeni
Odoo 19 pohranjuje prevedene tekstove u istom zapisu kao i originalni tekst (kao JSON polje). Izmijenjen prijevod je za bazu podataka stoga sasvim obična izmjena reda – i okidač je vidi. To jednako vrijedi za uređivanje putem sučelja, za uvoze, za interfejse i za skripte koje pišu direktno u bazu podataka. Automatski prijevod na 46 jezika poništava dakle upravo one stranice čiji se tekst promijenio, i ništa više.
- Ciljano umjesto pauzalno: izmijenjen proizvod poništava njegove stranice, liste u kojima se nalazi i pripadajuću kategoriju. Ostalo ostaje u kešu.
- Globalne izmjene (šabloni, asseti, jezici, meniji, porezi, valute) poništavaju sve odjednom jer mogu utjecati na svaku stranicu.
- Brojači ostaju po strani: brojač pregleda blog članaka mijenja se pri svakoj posjeti; namjerno ne pokreće poništavanje, inače keš kod popularnih članaka ne bi imao učinka.
- Sigurnosna mreža: dodatno postoji maksimalna starost po stranici (standardno 12 sati).
- Keš ne uzrokuje greške pri pisanju: greška unutar okidača bilježi se kao upozorenje i ne čini da stvarno spremanje ne uspije.
Dashboard i statistika
Sve što vam je potrebno za rad nalazi se na jednom mjestu: u Odoou pod Web stranica → Izvještaji → Keš stranica. Odjeljak Pregled je dashboard (s postavkama), a odjeljak Historija prikazuje brojke po danu i po web stranici.
Snimak ekrana iz testnog sistema s kopijama naših web stranica; nazivi web stranica zamijenjeni su rezervnim oznakama.
Postavke
| Postavka | Značenje |
|---|---|
| Aktivno | Glavni prekidač. Kada je isključen, Odoo opet isporučuje svaku stranicu kao ranije, u svim procesima najkasnije nakon 30 sekundi. |
| Lokacija pohrane | Automatski, datoteke ili radna memorija |
| Maksimalna starost (sati) | Sigurnosna mreža; stranice se neovisno o izmjenama obnavljaju nakon ovog vremena |
| RAM budžet (MB) | Najviše toliko radne memorije smije zauzeti RAM keš; ujedno i granica za ocjenu „staje“ |
| Granica diska (MB) | Maksimalna veličina keša datoteka; najstariji unosi uklanjaju se prvi |
Status i statistika
Status prikazuje aktivnu lokaciju pohrane s granicom, broj i veličinu keširanih stranica te praćenje izmjena: koliko je izmjena registrovano u posljednja 24 sata i koliko se tabela nadzire. Ako nadzor nedostaje, dashboard jasno upozorava, jer se tada kešu ne smije vjerovati. Dugmad na vrhu omogućavaju da se održavanje odmah pokrene, da se keš isprazni ili da se okidači provjere i po potrebi ponovo kreiraju.
Statistika (Danas, 7 dana, 30 dana) sadrži:
- Iz keša i Renderovano: pogoci i promašaji, iz toga stopa pogodaka
- Uklonjeno (izmijenjeno/isteklo): koliko je stranica odbačeno zbog izmjene ili isteka
- Vrijeme renderovanja i vrijeme keša: prosjek po stranici u poređenju
- Procijenjeno ušteđeno vrijeme servera i količina podataka iz keša
Brojke svaki radni proces prikuplja za sebe i upisuje jednom u minuti; redove starije od 90 dana čisti posao održavanja.
Historija kao dijagram, pivot i lista
Pod Historija dostupne su dnevne vrijednosti po web stranici – kao dijagram, kao pivot tabela ili kao lista. Tako vidite raste li stopa pogodaka ponovo nakon ponovnog pokretanja ili velike izmjene i koja web stranica iz keša dobija najviše prometa.
Sigurnost: šta nikada ne dolazi iz keša
Keš stranica nikada ne smije dovesti do toga da neko vidi tuđe sadržaje. Modul zato slijedi načelo: u slučaju sumnje ne keširati.
- Samo anonimni posjetioci: ko je prijavljen, ima korpu ili donosi neko drugo stanje sesije, uvijek dobija normalno renderovanu stranicu.
- Samo
GETbez parametara pretrage: pretrage, filteri, sortiranja, obrasci, korpa i blagajna ostaju netaknuti. - Samo status 200 i HTML: stranice s greškom, preusmjeravanja i datoteke se ne pohranjuju.
- Nema ID-ova sesije u kešu: stranica koja sadrži ID sesije ili postavlja kolačić ne pohranjuje se (i bilježi se kao upozorenje).
- CSRF token po zahtjevu: token u keširanoj stranici je rezervirana oznaka i pri svakoj isporuci se iznova umeće.
- Fin ključ: web stranica, jezik, cjenovnik, fiskalna pozicija i pristanak na kolačiće dio su ključa keša; ko vidi nešto drugo, dobija drugi unos.
- Više baza podataka: svaka baza podataka ima vlastite unose, vlastiti dnevnik i vlastitu statistiku.
- Nema curenja podataka: keš se nalazi lokalno na serveru (datoteka ili RAM). Nikakvi 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 server, ali košta vidljivosti. Modul bira suprotan put:
- Isti sadržaji za sve: tražilice, AI indekseri i posjetioci dobijaju istu stranicu. Ne postoji posebna „crawler verzija“ niti prepoznavanje prema identifikaciji preglednika.
- Brži odgovori pomažu indeksiranju: stranica koja odgovara za 20 umjesto za 500 milisekundi manje opterećuje crawl budžet, a crawleri u istom vremenu mogu obuhvatiti više stranica.
- Aktuelni sadržaji: budući da izmjene odmah poništavaju stranice, crawleri nikada ne vide zastarjelu verziju – važno ako održavate sadržaje za pretragu i AI odgovore.
- Strukturirani podaci ostaju sačuvani: JSON-LD, meta podaci i
hreflangreference dio su keširane stranice; sitemape i datoteke keš 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 komprimirana isporuka
Keš štedi ne samo vrijeme računanja nego i količinu podataka. Modul minimizira HTML prije pohrane i isporučuje ga komprimiran kada to preglednik ili crawler ponudi:
- Minimiziranje (parametar
website_page_cache.minify): HTML komentari otpadaju, razmaci se sažimaju. Potpuno se uklanjaju samo tamo gdje ih preglednik ionako ignorira, npr. između blok elemenata. Razmaci između inline elemenata ostaju,pre,textareai skripte ostaju nepromijenjeni, strukturirani podaci (JSON-LD) ponovo se pišu kompaktno. Ovisno o stranici, stranice su 10 do 30 % manje. U testu sa sedam stvarnih stranica tekst, broj elemenata, položaj svih elemenata i snimak ekrana bili su identični originalu. Prva isporuka (MISS) minimizirana je isto kao i svaka sljedeća (HIT). - Kompresija (parametar
website_page_cache.compress): stranice iz keša odlaze putem gzip-a (Content-Encoding: gzip,Vary: Accept-Encoding). Velike pakete asseta (CSS i JavaScript, do nekoliko MB) Odoo sam isporučuje nekomprimirano; modul ih jednom komprimira, odlaže kopiju na disk i zatim ih isporučuje direktno. Tako je od 2,1 MB CSS-a postalo 0,27 MB, a od 4,8 MB JavaScripta 1,1 MB. Stare kopije čisti posao održavanja. - Nakon ponovnog pokretanja računara: RAM keš ostaje sačuvan pri ponovnim pokretanjima Odooa, ali ne i pri ponovnom pokretanju servera. Zato ga posao održavanja postepeno preslikava na disk (parametar
website_page_cache.persist) i pri pokretanju vraća. Je li vraćeni unos još važeći, provjerava isti mehanizam kao i inače: starost i dnevnik izmjena. Minimizacija se pritom ne računa ponovo.
Instalacija i postavke
- Preuzeti modul: preuzmite izvorni kod s GitHuba i stavite ga u putanju addona 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 izmjena, okidači i posao održavanja (svakih 10 minuta). - Ponovno pokrenuti servis, kako bi svi radni procesi učitali modul.
- Otvoriti dashboard: Web stranica → Izvještaji → Keš stranica. Provjeriti je li praćenje izmjena potpuno i odabrati lokaciju pohrane (zadano: automatski).
- Provjeriti: dvaput pozvati stranicu shopa ili bloga i pogledati zaglavlje
X-Page-Cache: prvi putMISS, zatimHIT.
Postavke se nalaze kao sistemski parametri (website_page_cache.enabled, .backend, .ttl_hours, .max_mb_file, .max_mb_ram) i obično se održavaju u dashboardu. Modul je preveden na njemački. Deinstalacija ponovo potpuno uklanja okidače, dnevnik i sve keširane stranice.
Savjet za RAM keš: RAM budžet u dashboardu i veličina tmpfs-a (/dev/shm, opcija montiranja size=) moraju odgovarati potrebi. Oboje vam navodi provjera „Staje li u radnu memoriju?“ s konkretnim vrijednostima.
Ograničenja koja trebate znati
- Kratko kašnjenje nakon izmjena: indeks dnevnika izmjena osvježava se svake dvije sekunde. Do tada se izmijenjena stranica još može isporučiti u staroj verziji.
- Tekstovi ovisni o zalihama ažuriraju se putem promjena zaliha i maksimalne starosti.
- Procjena potrebnog prostora: dodatne verzije po cjenovniku ili zemlji nisu uračunate; planirajte malu rezervu.
- Nije zamjena za sve: keš rasterećuje zahtjeve koje smije posluživati. Prijavljeni korisnici, pretrage i obrasci i dalje prolaze kroz Odoo.
- Prvi poziv ostaje spor: nakon ponovnog pokretanja servera (RAM) ili globalne izmjene svaka se stranica jednom normalno renderuje prije nego što dospije u keš.
Česta pitanja
Šta je keš stranica za Odoo?
Open-source modul (website_page_cache, Odoo 19, LGPL-3) koji javne stranice shopa i bloga za anonimne posjetioce isporučuje iz keša umjesto da ih pri svakom pozivu iznova renderuje. Keš se po izboru nalazi u datotekama ili u radnoj memoriji.
Blokira li modul tražilice ili AI crawlere?
Ne. Tražilice i AI indekseri dobijaju iste stranice kao i svaki drugi posjetilac, samo brže. Nema blokade, nema usporavanja i nema posebne crawler verzije.
Hoće li se izmijenjene stranice i prijevodi automatski ponovo keširati?
Da. PostgreSQL okidači prijavljuju svaku izmjenu relevantnih tabela u dnevnik; zahvaćene stranice se odbacuju, a pri sljedećem pozivu iznova renderuju i pohranjuju. Prijevodi su obuhvaćeni jer ih Odoo 19 pohranjuje u istom zapisu.
Trebam li odabrati datoteku ili RAM?
U pravilu Automatski: modul koristi RAM dok sve stranice staju, a inače se prebacuje na datoteke. Datoteke su prikladne ako keš treba preživjeti ponovna pokretanja ili je RAM tijesan; RAM je najbrža varijanta.
Kako saznati staje li moja web stranica u radnu memoriju?
U dashboardu pod Web stranica → Izvještaji → Keš stranica. Odjeljak „Staje li u radnu memoriju?“ broji stranice po web stranici i jeziku, mjeri veličinu stranice i poredi potrebu s RAM budžetom, veličinom tmpfs-a i raspoloživom memorijom.
Koliko dodatnog RAM-a je potrebno za RAM keš?
Dashboard to navodi u zasebnom redu. Računa se: potreba = stranice × veličina stranice; sa sigurnosnom rezervom podijeljeno s 0,8. Budući da keš smije koristiti najviše polovinu raspoložive memorije, dvostruka vrijednost toga je slobodna memorija koja je potrebna; razlika je dodatni RAM. Ako je premalen samo RAM budžet ili tmpfs, dashboard navodi postavku zajedno s ciljnom vrijednošću.
Može li keš nekome prikazati tuđe sadržaje?
Ne. Kešira se samo za anonimne GET pozive bez parametara pretrage. Prijavljeni korisnici, korpe, obrasci i pretrage nikada ne dolaze iz keša; jezik, cjenovnik, fiskalna pozicija i pristanak na kolačiće dio su ključa.
Kako isključiti keš u slučaju nužde?
U dashboardu isključiti prekidač „Aktivno“ ili sistemski parametar website_page_cache.enabled postaviti na 0. To vrijedi u svim radnim procesima najkasnije nakon 30 sekundi. Deinstalacija dodatno uklanja okidače, dnevnik i keširane stranice.
Kako prepoznati da je stranica došla iz keša?
Po zaglavlju odgovora X-Page-Cache: HIT znači iz keša, MISS znači svježe renderovano i pohranjeno.
Smanjuje li modul HTML i komprimira li ga?
Da. Keširane stranice se konzervativno minimiziraju (komentari i suvišni razmaci otpadaju, sadržaj i prikaz ostaju isti) i pri pogocima keša isporučuju putem gzip-a; paketi asseta komprimiraju se jednom i isporučuju s diska. Oboje se može isključiti putem parametara website_page_cache.minify i website_page_cache.compress.
Podrška Biricon IT Services
Vaša Odoo web stranica sporo reaguje pri opterećenju crawlera, ili želite shop i blog učiniti bržim i vidljivijim? Podržavamo vas pri analizi opterećenja, postavljanju keša stranica, dimenzioniranju radne memorije i radnih procesa i višejezičnoj optimizaciji za tražilice vaše Odoo web stranice. Izvorni kod modula možete pronaći na GitHubu.
Stanje: 10. novembar 2026. Mjerne vrijednosti potiču iz testnog sistema s uzorcima podataka i nisu garancija za druge instalacije.