DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   PHP (http://www.devprotalk.com/forumdisplay.php?f=9)
-   -   Keširanje includovanih fajlova (http://www.devprotalk.com/showthread.php?t=621)

ivanhoe 07. 02. 2006. 06:50

Keširanje includovanih fajlova
 
Gledam da malo smanjim load na jednom serveru koji odrzavam, pa sam mislio da stavim neki od php "akceleratora" (extenzije koje kesiraju jednom kompajlirane inkludovane fajlove). Koliko sam shvatio glavni u igri su APC, zendOptimizer i eAccelerator... verovatno ima jos neki...

jel koristio neko nesto na ovu foru? Cini mi se da je Ilija pominjao par puta nesto oko zend extenzije?

ono sto me zanima je pre svega da li postoji neki negativni side-effect instaliranja ovih extenzija?

Procitao sam recimo negde da APC ne proverava da li su fajlovi promenjeni (radi brzine) i da to onda zahteva da se restartuje apache posle svake promene fajlova. Slican zahtev ima i mod_perl i vec znam koliko to moze da nervira kod rada.

Da li mozda postoji neko mesanje globalnih promenjivih iz vise skripti ili tako neka glupost kao posledica tog keshiranja?

Dalje procitao sam da ZendOptimizer i eAccelerator rade zajedno, dok APC ne radi sa Optimizerom u kombinaciji, ali je zato brzi od prethodne kombinacije. Da li mi optimizer treba za nesto, posto je dedicated server u pitanju i samo ja trenutno imam root-a, pa nema potrebe da kod encodujem radi zastite copyrighta.

Da li ce ostale extenzije da nastave da rade normalno ako stavim nesto od ovoga?

Da li je moguce izolovati keshiranje samo za jedan virtual host ?

I tako, jednom recju recite mi sve sto znate o ovome, jer ako oborim slucajno server ode mi glava :P

bojan_bozovic 07. 02. 2006. 07:54

mozes da snimis fajl u nesto.html i zavrsis. Prilikom UPDATE upita prebrises fajl. Ne znam sta ce ti neki "eacceleratori" za takvu stvar. To je ok, ako se strana mnogo ne menja, dakle mnogo SELECT, malo UPDATE.

zextra 07. 02. 2006. 11:19

ja koristim eAccelerator, rad je potpuno transparentan, s tim sto recimo smarty radi u proseku 2-2.5x brze sa eAcceleratorom, tako da nemam nameru da ga deaktiviram. Mozes opusteno da ga stavis kao server-wide ekstenziju (posto se instalira kao zend extenzija). Automatski proverava zadnji modification time svakog fajla koji treba da parsuje. Jasno se vidi da scriptu koji si upravo izmenio treba znacajno duze da se parsuje (ali ne duze nego sto bi mu inace trebalo bez akceleratora), ali onda server load opada poprilicno. Samo obrati paznju - (ne znam za ostale, ali je za eAccel tako) sto mu vise memorije das, manje ce se desavati rekompajliranje skripti (cudna mi cuda :))a po defaultu mislim da alocira nekih 50mb za cache. Uspeo sam da popunim tih 50mb sa forumom u localhostu i jos par nekih skripti (a ne secam se tacno, mozda je neka od skripti sasvim slucajno bila typo3, sto objasnjava zauzece kompletnog cache-a :D)

Opet kazem, ne znam za ostale, ali eaccel imas i za win, pa mozes isprobati kako radi u kom god da si okruzenju.

@bojan: nisi shvatio poentu pitanja. Mozes ti da imas optimizovan kod koji radi keshiranje svega (ako ti je bas stalo do toga), ali ne mozes da skratis vreme potrebno php-u da tvoju skriptu parsuje svaki put kada je ti pokrenes. Tu uskacu akceleratori jer oni cuvaju binarnu verziju tvoje skripte (koja je vec sazvakana za engine), pa nema potrebe da se ceo fajl opet cita i parsuje svaki put kad zahtevas skriptu, vec akcelerator samo prilozi binarnu verziju i gotov posao.

Ilija Studen 07. 02. 2006. 11:49

Imam licencu za Zend Encoder tako da se nisam cimao sa ostalim rešenjima. Čuo sam za njih, čuo da APC treba da bude u paketu sa PHP6, čuo da mnogo ljudi hvali i koristi eAcc i to je manje više to. Znači, samo čuo i čitao.

Praktično što se Zend Encodera tiče, ti svoju skirptu proguraš kroz encoder i dobijene fajlove uploaduješ. To je to. Encodeovani fajlovi su manji od 10% - 50% od izvornih fajlova, a ako imaš skripte koje koriste veliku količinu masivnih fajlova (npr Propel generisane klase) onda štede jako mnogo vremena pri parsiranju i dodaju veliko obrzanje (poznato je da PHP guta memoriju kad treba da parsira veliku količinu fajlova i da mu tad izrazito padaju performanse). Čak je postalo pravilo da se takvi skriptovi gotovo isključivo distribuiraju u enkodovanom obliku (iz navedenog razloga).

Na neke mane što se Zend Encodera tiče nisam naišao, osim na to da je jedna od skorijih verzija razbijena (postoje razni "dezender" alati) i da je Zend odgovorio krajnje neprofesionalno na celu priči: izbacili su novu verziju i rekli developerima da plate $1400 upgrade. Jako seljački, ali Zend je inače poznat kao kompanija koja želi da dođe do para na svaki moguć način.

zextra 07. 02. 2006. 12:02

Off Topic: Oce ljudi malo kajmaka kad vec sve ostalo sto rade u vezi PHP-a ne mogu (i nece) da naplate...

ivanhoe 07. 02. 2006. 22:48

nista, probacemo sve redom, pa da vidimo sta mi najbolje fercera, nema druge :)

zextra 07. 02. 2006. 23:13

Prvo sto dohvatis to ces verovatno i koristiti. Ali bez testiranja nista...


Vreme je GMT +2. Trenutno vreme je 00:57.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.