Natrag   Forum.hr > Informatička tehnologija > Za napredne korisnike > Programiranje

Programiranje Za programere i one koji to žele postati ...

Odgovor
 
Tematski alati Opcije prikaza
Old 09.05.2017., 20:13   #1
Optimizacijske dileme, PHP

Pozdrav,

jedna stvar mi je oduvijek bila mutna...pa započetak lagano pitanjce

Koliko je serveru teško na svaki request učitati neku skriptu od recimo 1MB.

1MB je prilično puno defaultnog librirya, no muči li to server ako bi se taj defaultni libriry cijeli učitavao za svaki request.

Mislim si onako, ako to server drži u svojoj RAM memoriji...onda nebi trebao biti problem. No ako za svaki request ima posla sa tih 1MB da parsira ili što već...onda je već problem. ??
bozoou is offline  
Odgovori s citatom
Old 09.05.2017., 22:35   #2
Probaj pa vidi. Izvrši izmeru. Nemoj torokat bezveze.

Predostavka je majka svijeh zajeba.
grogo bolger is offline  
Odgovori s citatom
Old 09.05.2017., 23:03   #3
Quote:
grogo bolger kaže: Pogledaj post
Probaj pa vidi. Izvrši izmeru. Nemoj torokat bezveze.

Predostavka je majka svijeh zajeba.
Dobro je vidjeti u praksi kako se stvar ponaša...ali teorijska pozadina nije na odmet ako netko zna.

Jer možda postoji način da se kaže nekako serveru kako da hendla određene fileove.
Možda različite konfiguracije servera će se drugačije ophoditi prema datoj situaciji..itd.

Nije baš da mogu napraviti benchtest i puno saznati iz toga...ako ne poznam moguće okolnosti.
bozoou is offline  
Odgovori s citatom
Old 11.05.2017., 00:54   #4
Mislim da se baviš krivim problemima. Ako koristiš autoloader, učitavaju ti se samo klase koje koristiš. Ako ti je autoloader dobro podešen, onda on to i relativno brzo učita. Postoji više razina cacheiranja koda, ali ti kao programer o tome ne trebaš previše razmišljati dok razvijaš kod.

Skoncentriraj se na to da ti je kod dobro strukturiran, pregledan, skalabilan, da nema skrivene kompleksnosti. Pripazi na querye, profiliraj ih, izbjegavaj spore querye, pogotovo kod update-a i insert-a jer oni lockaju podatke, pa ti drugi upiti zbog toga pate. Kod kompleksnih proračuna se ne moj bojati temporary tablica ako ti ubrzavaju obradu. Posebni pripazi na petlje i kombinacije query + petlja, nauči prepoznati i riješiti N+1 problem (recimo, imaš N članaka i želiš ih izlistati s prvom slikom u galeriji - umjesto da za svaki članak radiš upit za dobiti prvu sliku, izvučeš id-eve članaka i jednim queryem povučeš prve slike svih članaka iz prvog querya, pa si umjesto N+1 upita na bazu napravio 2 upita, ili, ako ti testi pokaže da je brže, napravi jedan query s joinom). Ako ti za vađenje članka treba neki sporiji query, za izlist radije napravi brži query koji će vaditi samo one podatke koji ti trebaju za izlist.

Inače, rad s bazom je u pravilu barem red veličine sporiji od učitavanja i parsiranja potrebnih php fileova (naravno, ovisi o prirodi aplikacije, frameworku koji koristiš i sl).

Prilagođavanje koda planiranom mehanizmu cacheiranja koda u startu spada u mikrooptimizaciju, a tu ćeš sebi zakomplicirati život, potrošiti hrpu vremena, zakomplicirati kod, a onda postoji velika vjerojatnost da će ti promaknuti neki očiti problem s performansama.
MrBlc is offline  
Odgovori s citatom
Odgovor


Tematski alati
Opcije prikaza

Kreni na podforum




Sva vremena su GMT +2. Trenutno vrijeme je: 16:22.