Joomla performanse (1.0 vs 1.5)

Opet idu zahtjevna pitanja od mene na koja vjerojatno neću dobiti odgovor ali će mi biti lakše, nešto kao vid psihološke samopomoći.

Tema je otvorena ovdje jer je problem vjerojatno širi od same Joomle.

Imam jedan zanimljiv problem. Već nekoliko mjeseci radim na migraciji Jabučnjaka sa Joomle 1.0.x na Joomlu 1.5.x. Pritom su osvješene sve komponente kao i ispravljena hrpa problema koji su dugo čekali. Međutim iz nepoznatog razloga Joomla 1.5 stranica je osjetno (gotovo dvostruko) sporija od postojeće J 1.0 stranice. Obje stranice nalaze se na istom serveru i koriste istu bazu. Server je dedicated. Svojevremeno je postojeća stranica imala velikih problema sa brzinom koji su konačno rješeni cachiranjem queryja u modulima što je skinuo page load time sa 2-3 sekunde (!) na 0.3x sekunde i 1.2x sekunde za forum. Međutim, na novoj stranici je vrijeme učitavanja oko sekunde i to na naslovnici čak i ako unpublisham sve module.

Koristim sh404sef koji je poznat da opterećuje bazu sa velikim brojem queryja i posumnjao sam na njega jer se recimo forum thread sa 1 porukom otvara sekundu i pol, a u slučaju da ih ima 50 otvara se i do 10 sekundi. Međutim, uključivanjem debuga vidim da stara stranica radi jednako brzo u oba slučaja iako odvrti preko 2000 queryja u usporedbi sa cca 750 na novoj stranici. Uz to, stara stranica je u produkciji i poslužuje posjetitelje dok sam na testnoj samo ja. top ne pokazuje ništa sumnjivo, mtop također (cache hit 100%, slow queries na nuli). Iz viđenog odaziv baze bi trebao biti dobar no s brojem queryja performanse padaju ali kao da je problem na PHP strani a ne mysql.

Malo sam zbunjen, jer Joomla 1.5 bi ako ništa trebala biti brža i/ili optimiziranija od stare verzije.

Još sam jednu zanmljiv stvar primjetio. Na postojećoj stranici u mjerim vrijeme potrebno za generiranje stranice na način opisan ovdje, međutim na Joomla 1.5 siteu to više nije davalo odgovarajuće rezultate (vrijednost je uvijek bila ispod 0.01 sekunde). Pretpostavljam da je to zbog drugačijeg načina na koji Joomla u verziji 1.5 generira output tako da se svi queryji i kod izvrše prije nego što se pošalje template head. To je riješeno instalacijom modula koji trenutno precizno prikazuje katastrofalno vrijeme koje je potrebno za page load.

Da ne zaboravim, uključen je cache plugin kao i Cache u Global preferences, nepotrebni plugini su isključeni. Povrh svega, “težina stranice” je 100njak KB manja od starog templatea i firebug ne pokazuje nikakve sumnjive stvari (osim dugog čekanja na odaziv).

Svaki educirani savjet je dobrodošao, pogotovo od kuda sada krenuti i kako najbolje troubleshootati problem.

I za kraj:
Debian Linux
Database Version: 5.1.49-3-log
Database Collation: utf8_general_ci
PHP Version: 5.2.6-1+lenny14
Web Server: Apache/2.2.16 (Debian)
Web Server to PHP interface: apache2handler
Joomla! Version: Joomla! 1.5.25 Stable [ senu takaa ama mamni ] 14-November-2011 18:00 GMT

Mislim da sam davno čitao da se samo na optmizicije tablice na Joomli može dobiti 30%. Da se postave indexe i sl. No nebi to rekao da ima kakve veze ovdje jer onda i stara verzija nebi radila.
A jesi li probao sam čistom instalacijom Joomle, kako se onda Joomla drži.
Radio si upgrade komponenta i vjerovatno neke komponente imaju nove mogučnosti koje opterećuju bazu.
Komponente rijetko kad dolaze optimizirane pogotovo ako su besplatne.

Možda da probaš onu praiskonsku metodu, gasi module i komponente jedan po jedan pa vidi kako se stranica ponaša.

Zaboravio sam to spomenuti, na staroj sam verziji radio neke optimizacije baze, dodavao indekse i slično. Možda je zaista u tome problem jer više ne vidim ništa drugo, usporedit ću strukturu baza i napraviti izmjene i testirati.
Inače je 1.5 verzija instalirana “na čisto” i sadržaj je prebačen/konvertiran iz postojeće stranice. Idem odmah krenuti sa usporedbom strukture dviju baza pa javim ako bude nekih poboljšanja. Trenutno najviše pati forum (stari forum otvara thread od 87 poruka za 1.x sekunde, a novi otvara thread od 30 poruka za 3.80 sekundi. :frowning: )

Heh, radio sam na optimizaciji joomle vec dosta puta, tako da ti mogu prenijeti neka svoja iskustva.
Prebacivanjem vrsta tablica u bazi na MariaDB sam dobio vec puno, probao sam sa InnoDB i MyISAM.

  • neki speed testovi, a mogu reci da sam ja u pravoj primjeni bio ugodno iznenadjen, a počeo sam koristiti ovu vrstu tablica kad sam prebacivao i vb forum tablice na isti tip pa sam isao onda testirat i sa dva sitea na joomli.

Jesi razmisljao da koristis memcache sa joomlom? koristim i memcache i za sada je ok, manje opterecenje i nesto brze ucitavanje…
Nginx nije losa solucija ako zelis i dodatno ubrzati rad joomle.

No, meni bas 1.5 verzija joomle i nije nesto brza, bolje su mi verzije 1.6/1.7/2.5

I jos jedna stvar, znaš da se jos samo ovaj mjesec updatea joomla 1.5, a poslije toga se svi moraju sami snalazit? Moja preporuka je ako možeš prebaci na 2.5…

Hvala zerocoolos na korisnom infou, koncentrirat ću se na bazu i proučiti MariaDB. Što se verzije tiče, ja sam onaj koji se drži starog i oprobanog. Trenutni site je još na Joomli 1.0.x, 1.5.x ima sve što mi treba. Za koju godinu ću prebaciti na 2.5…jer što se snalaženja tiče, već se godinama oslanjam uglavnom na sebe. :slight_smile:

prebaci se odmah jer su ti prestali održavat joomlu 1.5 i ako buš imo ikakvih problema sa sajtom jao si ga tebi, neznam zaštoi se već nisi brebacio na Joomlu 1.5 nije ni bitno, imaš možda još negdje extenziju da ti digne sa 1.0 na 1.5 onda ti je lako prebacit na 2.5 jer 1.0 na 2.5 neijde osim ako bnemisliš radit sajt odpočetka

Ako budem imao problema onda ću ih riješiti kao i u prošlosti, a ne čekati nekoga da to napravi za mene.

Trenutno radim na jednom svom mini projektu portalu (u pitanju je Joomla 2.5 i najnovija Kunena) i mogu ti reći da je rad s novom Joomlom neuporedivo jednostavniji i brži bez nekih trzavica u odnosu na 1.0 i 1.5. Također me ugodno iznenadilo poboljšanja što se tiče SEO optimizacije, npr. u ovom kompletu više ne trebaju komponente za Canonical tagove. Što se tiče razlike u brzini između Joomle 1.0 i 1.5 a joj nebo i zemlja, no možda ti problem pravi i redoslijed plug-inova! Meni je na jednom portalu to zadavalo glavobolju, sva silna optimiziranja sam napravio i dok nisam postavio pravilan redoslije plug-inova sajt je sporo radio.

Nisam imao nekih problema do sada, ali radim sa Joomlom jos od Mambo 4.0 dana, a nekoc sam bio i u Simpleboard (djed Kunene) dev timu. :slight_smile: Upgrade na Joomlu 1.5 je toliko cekao jer sam prilicno toga tweakao u kodu a i dosta toga se izmjenilo. Sada sam se konacno uhvatio toga i usput popravljam sve stvari koje je davno trebalo srediti, a kako je upgrade i tako morao ici preko 1.5 rekao samd a cu prvo sve prebaciti na tu verziju a onda dalje kako se pojave verzije potrebnih komponenti kojih inace malo koristim. Tri mjeseca radim na toj migraciji i ne da mi se opet sve seliti na 2.5, barem ne odmah.
No uglavnom, i u ove sitne sate glavu razbijam ovo ovog problema. Ocekivao sam da ce na novoj Joomli stranica biti barem jednako brza i sada na samom kraju naletim na ovo. Svojedobro sam se mucio s performansama na Joomli 1.0 i to je rijeseno, a sada imam situaciju da mi je Joomla 1.0 site sa svim modulima, sh404sef i posjetiteljima brzi od Joomle 1.5 bez sh404sef, iskljucenim bas svim modulima i samnom kao jedinim korisnikom. Nesto smrdi, a ne mogu naci sto.
Dobar savjet za plugine, primjetio sam da ih ima poprilican broj, sve sto mi ne treba sam pogasio, ali idem bas probati za test iskljuciti bas sve sto se moze, ne znam vise sto dalje napraviti. Zelio sam staviti i mamcached ali za to bi trebao upgrade PHP-a koji ce onda razbiti stari site.

Hm nije kod mene bio problem toliko u količini nego u njihovom redoslijedu, kod mene je bio problem samo u redoslijedu po kojem su postavljeni, jer nisam više siguran, no znam da sistem pluginovi moraju biti posloženi kako valja, mislim da SEF i CACHE moraju biti zadnji no nisam više siguran :).

Koma, isključio sam sve plugine i iako se naslovnica otvarala nešto brže, forum je i dalje otprilike dvostruko sporiji. :frowning: Idući korak je capture svih queryja u debugu na starom i novom siteu i onda suporediti gdje su razlike. Ima li kakav način da se dobije log svih mysql queryja sa vremenom njihovih izvršenja?
Možda probam instalirati i Joomlu 2.5 čisto da vidim ima li tamo ikakvog poboljšanja.

Probaj isključiti sve dodatke koji rade u legacy modu. Javi ako vidiš napredak

Nema legacy komponenti i legacy plugin je isključen od početka.

A moža skripta koja je radila prebacivanje sa 1.0 na 1.5 verziju nije “popunila” neke podatke u bazi vezanih za optmizaciju foruma.
Već je u bazu poslan samo sadržaj.

Podaci za optimizaciju fale i onda se svaki put radi izvršavanje svih querija potrebnih da bi se došlo do informacija.

Preletio sam okom tabele i čini se sve ok ali je svakako moguće sudeći po simptomima. Kunena je pri instalaciji sama upgradeala staru bazu, ali sada kada si spomenuo instalirat ću na drugi site kunenu od nule i usporediti strukturu upgradeane i nove baze…iako, stara baza radi dobro na starom siteu. :-/

Da se nadopunim, mislim da je moguće da sam pri zadnjoj optimizaciji dodavao neke indexe na kunena tabele koji su pomogli, je li moguće da te iste izmjene sada stvaraju problem? Pretpostavljam da je najbolje da usporedim trenutne i defaultne tablice.

Ne mislim na probleme sa tablicama već problema u tome kako je sadržaj ubačen u tablici.
Recimo u Magento nema automatske optimizacije, već ju moraš ručno pokretati.
U drugom software se optmizirani podaci spremaju u bazu prilikom unosa, ali ako zaobiđeš sustav unosa i radiš direktno na bazi zaobiđeš i cijeli postupak optimizacije unosa.

Recimo za primjer onaj tko je zadnji postao u kategoriji vjerovatno se radi optimizacije sprema u posebnu tablicu.
Ti ako si “direktno” upisao podatke u bazu zaobišao si cijeli sustav odvajanja podatka koji služe za optimizaciju sustava.

Ne, postojeća baza je korištena…

A da ako si mjenjao postojeću bazu i onda radio upgrade, lako je moguće da upgrade nije dobro prošao.
No ako si radio samo sa indexima ne vidim gdje bi tu mogli biti problemi, morao bi baš nešto promjeniti, nadograditi da nebi radilo, neznam što bi indexi smetali.

Evo gledam, stara baza je tu, upgrade kreira novu bazu i migrira podatke. I nova i stara baza imaju indexe kako ih i očekujem. Idući korak mi je uključiti slow mysql log, staviti donju vrijednost dovoljno malu da vidim postoje li upiti koji traju duže nego na staroj bazi. Oh veselja.


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja