eT` Posted November 5, 2008 Report Share Posted November 5, 2008 Tātad izveidoju mājaslapu bet gribu uzzināt kā to var optimizēt :) Jo zinu, ka tas atvieglos darbību, ja būs daudz lietotāju. Ar koda palīdzību noteicu cik indexā izpildās kvēriji - 32 gribu zināt kā šo skaitu var samazināt ( ja var ) apvienojot vai ko tur izdarot. Ja nav tādu pamācību tad rakstiet PM paskaidrošu sīkāk kas par lapu un varbūt pat aizsūtīšu lai paši redzat kodu. Vēl zinu ka ir iespējams arī PHP optimizēt. Labprāt uzzinātu kā arī to var izdarīt. Paldies jau iepriekš, eT^ Link to comment Share on other sites More sharing options...
Toms Posted November 5, 2008 Report Share Posted November 5, 2008 Ar Xdebug papētīt kas izpildās visilgāk un to optimizēt. Ir ļoti daudz varianti kā un ko darīt. Meklē "bottleneckus". Kverijus optimizēt, pareizus indeksus salikt, kešot utt. Link to comment Share on other sites More sharing options...
eT` Posted November 5, 2008 Author Report Share Posted November 5, 2008 labi mēģināšu skatīties caur to Xdebug bottlenecki :D patīk skaidrojums - pudeles kakli ķip.? :D par kvērjiem tumša bilde ;[ Link to comment Share on other sites More sharing options...
Gints Plivna Posted November 5, 2008 Report Share Posted November 5, 2008 Pareizā metode kā ķerties pie kaut kā optimizēšanas ir šī ;) Gints Plivna http://datubazes.wordpress.com Link to comment Share on other sites More sharing options...
Java Posted November 6, 2008 Report Share Posted November 6, 2008 Ja gribi optimizēt queriju, varbūt uztaisi vienu procedūru, kas MySQL galā uztaisīs ciklu un atgriezīs iekš php vienkārši masīvu, ko izmantot, tev nebūs jāvēršas pie db atkārtoti... Bet neesmu mēģinājis, neesmu drošs, vai tas optimizēs ātrumu. Otrs variants - ej cauri kodam, skaties, kur notiek pilnīgi liekas lietas. BTW, ko gribi optimizēt - servera gala izpildi vai klienta gala? Link to comment Share on other sites More sharing options...
bubu Posted November 6, 2008 Report Share Posted November 6, 2008 Ja gribi optimizēt queriju, varbūt uztaisi vienu procedūru, kas MySQL galā uztaisīs ciklu un atgriezīs iekš php vienkārši masīvu, ko izmantot, tev nebūs jāvēršas pie db atkārtoti... E? kā tas ir jāsaprot? Link to comment Share on other sites More sharing options...
v3rb0 Posted November 6, 2008 Report Share Posted November 6, 2008 pie webistiem laikam pieņemts - atrodi kur paliek laiks(bottleneckus), un sakešo to, ko dara bottlenecki. ja tā nevar, tad tikai sāc domā par kaut kā pārtaisīšanu dziļāk. Link to comment Share on other sites More sharing options...
Java Posted November 6, 2008 Report Share Posted November 6, 2008 E? kā tas ir jāsaprot? Tā, ka tu MySQL galā izdari lielu daļu darba un db pieprasījumus iekš vienas procedūras, ko izsauc php ar vienu pieprasījumu mysql_query("CALL MY_PROC(tram1,taram2,param3);",$db_link); un izmanto atgrieztos datus nekā veic atkārtotus querijus no php gala. Link to comment Share on other sites More sharing options...
codez Posted November 6, 2008 Report Share Posted November 6, 2008 Tad jau var html kodā paslēpt flash objektu, kurā iebūvē mysql konektēšanās funkcijas un ar jūzeri, kurš var tikai izsaukt procedūras, izsauc un dabū datus. PHP pat nebūs vajadzīgs vipār. Ielādēsi pliku HTML ar paslēptu Flashu un datus no DB caur tiešo Flash-Mysql konekciju. Vai nav jauki? :) Link to comment Share on other sites More sharing options...
bubu Posted November 6, 2008 Report Share Posted November 6, 2008 Kāpēc nevar vienkārši dabūtos datus no parasta kverija saglabāt php pusē un neveikt atkārtotus kverijus bez nekādām storātām procedūrām? Link to comment Share on other sites More sharing options...
Java Posted November 6, 2008 Report Share Posted November 6, 2008 Nu var arī iekešot, bet nu ja ir kaut kādi starpkveriji? Datubāzi vajag optimizēt, bet, ja tā atbilst vismaz pirmajām 3 normālformām pilnībā, bieži vien sanāk daudz relācijas! :D Link to comment Share on other sites More sharing options...
bubu Posted November 6, 2008 Report Share Posted November 6, 2008 Kāds tagad starpkverijiem tur sakars? Kveriju iekš kverija var arī normāli tāpat bez storētām procedūrām uzrakstīt. Nesaprotu, kur tu tur dikti lielo ieguvumu redzi. Es, protams, nesaku, ka nevajag lietot storētās procedūras. Tās vajag lietot, lai atdalītu SQL kverijus no php koda. Taču, tās itin neko labāku optimizācijas ziņā īpaši nedos. Link to comment Share on other sites More sharing options...
martins256 Posted November 6, 2008 Report Share Posted November 6, 2008 Varbūt,ka viņam ir kkas tāds: $sql = "select id,... FROM t1"; $result = mysql_query($sql); while($row = mysql_fetch_assoc($result)) { $sql2 = "SELECT ... FROM t2 WHERE t1_id = {$row['id']}"; ... } Ko vienkārši varētu optimizēt ar join. Kā tieši, Java, tu plāno apvienot vienā rezultātā dažāda platuma, garuma sql rezultātus? Link to comment Share on other sites More sharing options...
Java Posted November 6, 2008 Report Share Posted November 6, 2008 bubu, kāpēc tad tik ilgi diskutēt, ja mana sākotnējā doma tāda arī bija? Es, protams, nesaku, ka nevajag lietot storētās procedūras. Tās vajag lietot, lai atdalītu SQL kverijus no php koda. Taču, tās itin neko labāku optimizācijas ziņā īpaši nedos. Un es arī teicu, ka neesmu pārliecināts vai tas dos ko ātrdarbības ziņā... Pieņemu, ka uz nelielu projektu nekādas dižās atšķirības nebūs. Link to comment Share on other sites More sharing options...
Java Posted November 6, 2008 Report Share Posted November 6, 2008 Kā tieši, Java, tu plāno apvienot vienā rezultātā dažāda platuma, garuma sql rezultātus? Par daudzdimensiju masīviem esi dzirdējis? Link to comment Share on other sites More sharing options...
Recommended Posts