Jackal Posted December 5, 2008 Report Share Posted December 5, 2008 Kā ir ar include() un require once() ātrdarbību. Ir vajadzība automātiski inklūdot php klases. Tie varētu būt ~ 30 php faili katrā lapas pārlādes reizē. Man jau sāk likties, ka tā darīt nav labi, bet gribētu zināt cik daudz tas ietekmē lapas ielādes laiku un servera noslodzi pie liela lietotāju skaita? Link to comment Share on other sites More sharing options...
Grey_Wolf Posted December 6, 2008 Report Share Posted December 6, 2008 Jebkura faila atversana un nolasiisana aiznjem laiku, varbuut iespejams taas klases sarakstiit paris failos, tas ir fiziski samazinat failu skaitu ... Ieguvums buus tieshi uz faila atversanu/aizversanu (kas ir sameraa laikietilpiigs process ) Link to comment Share on other sites More sharing options...
Endijs Posted December 6, 2008 Report Share Posted December 6, 2008 require_once ir lēnāks par require, bet include_once ir lēnāks par include. Savukārt šo funkciju izsaukšana ar absolūtajiem ceļiem ir krietni ātrāka kā ar relatīvajiem. Piemēram require_once('/var/www/virtual/domain/scripts/script.php') ir ātrāk kā require_once('../scripts/script.php') Bet domāju, ka 30 failu gadījumā nav pamata lielam uztraukumam. Piemēram, kodējot ar ZF daudz maz sarežģītas lietas, katrā lapas pārlādē var tik ielādēti pat simtiem failu. Link to comment Share on other sites More sharing options...
Delfins Posted December 6, 2008 Report Share Posted December 6, 2008 Bet domāju, ka 30 failu gadījumā nav pamata lielam uztraukumam. sareizini x*UsersOnline un dabūsi problēmas. Vispār ideālais variants ir padot pareizos pilnos/ceļus. Atteikties no papildus čekošanas un nokompilēt (ar domu, ka tur neviens neko nemainīs konfigā on-the-fly un viss ir pareizi pēc "esamības") Link to comment Share on other sites More sharing options...
codez Posted December 6, 2008 Report Share Posted December 6, 2008 Es izmantoju autoload - lādēju tikai tās klases, kuras ir nepieciešamas. http://lv2.php.net/autoload Un gadījumā, vai tad PHP akselerātori jau netur klases atmiņā "nokompilētā" veidā? Link to comment Share on other sites More sharing options...
Grey_Wolf Posted December 6, 2008 Report Share Posted December 6, 2008 Piemēram, kodējot ar ZF daudz maz sarežģītas lietas, katrā lapas pārlādē var tik ielādēti pat simtiem failu. Un tas nebuut nav labi, Nevaru pat iedomaties kadai jabuut problemai lai buutu nepieciesams ielaadeet Simtiem failu.. IMPHO 99% gadijumos to visu var optimizeet ... , protams ja katrai siikaakajai problemai raksta klasi, nevis izmanto parastu funkciju taa jaa --> faili savaksies daudz ... Link to comment Share on other sites More sharing options...
bubu Posted December 6, 2008 Report Share Posted December 6, 2008 Endijs ar to nedomāja, ka simtiem inklūdes ir labi. Viņš tikai to salīdzināja ar autora 30 failiem, ka 30 faili salīdzinoši ir maz, ja jau citi inklūdē simtiem failu. Link to comment Share on other sites More sharing options...
Endijs Posted December 6, 2008 Report Share Posted December 6, 2008 Kā jau bubu teica - es jau neteicu, ka tas ir labi. Vienkārši salīdzināju. T.i. - lietojot frameworkus failus nāksies ielādēt kaudzēm vien. Tāpēc 30 faili manā skatījumā nav nekas traks. Turklāt, ja visur vēl salikt absolūtos ceļus, tad vispār problēma būs minimāla. Tam pašam ZF - viņam priekš katra sīkākā štrunta ir savas klases. Protams, ir ērti, jo var overloadot, ir sadefinēti interfeisi pie kuriem jāpieturās. Bet tā rezultātā klašu ir tik nenormāli daudz. Un katra ir savā failā. Un par to, ka failu inclūdošana ļoti ietekmē ātrumu liecina kaut vai fakts, ka veicot šādas tādas optimizācijas ar ZF (sadefinējot absolūtos ceļus, izvācot require_once, utml, ) var paātrināt skriptu izpildi pat par 30%. Link to comment Share on other sites More sharing options...
Recommended Posts