Jump to content
php.lv forumi

mysql querie ātrdarbība


mysql_query

Recommended Posts

Sveiki,

 

Ir projekts, kurā tiek izpildīti pie katras ielādes ~ 20 līdz 30 querijiem.

 

Ielādes laiks - 0.09 seconds.

 

 

Queriju skaitu ir plānots palielināt.

 

Ielādes laiks attiecīgi palielināsiet.

Ielādes laiks - 0.20 seconds.

 

 

Paši queriji ir optimizēti, pate tabula arī optimizēta.

 

Nu lūk, jautājums.

 

Kā izpildīt piemēram, 50 querijus ar minimālu izpildes laiku.

Link to comment
Share on other sites

Kešo. Ar Memcache, piemēram. Tomēr 0.2s jau nav īpaši daudz (ja nav liela noslodze, paralēli pieprasījumi).

 

EDIT: 0.2 nez vai lietotājs vispār varētu just, lielāks bottle-necks būs lejupielādes ātrums...

Edited by briedis
Link to comment
Share on other sites

1kārt - visātrāk dara tad, ja neko nedara. Varbūt pusi no vaicājumiem var izmest? Varbūt vismaz tos var nepildīt pie __katras__ ielādes?

2kārt - 1 tabula un 20-30 vaicājumi un būs 50? :O Ciklā lasam kaut ko pēc id??? OK, neko par to nezinot ļoti dīvaini izklausās.

3kārt - 0.09 sekundes, 0.2 sekundes (pieņemot, ka tas ir visiem kopā), tās lietotājam ir tādas visnotaļ netveramas vienības. Varbūt ir vērts koncentrēties uz lietām, kas reāli aizņem vairāk laika, jo pat, ja tās 0,2 sekundes noīsinās līdz 0, būs acīmredzam ieguvums?

 

Tā vien gribās pareklamēt pāris savus ierakstus:

http://datubazes.wordpress.com/2007/11/06/kur-paliek-laiks/

http://datubazes.wordpress.com/2011/01/19/darbu-seciba/

 

Gints Plivna

http://datubazes.wordpress.com

Link to comment
Share on other sites

Ja lapu būvē no daudziem querijiem un ja ir liels apmeklējums, tad ieteicams kešot lapu nemainīgās daļas failos un ar readfile() sūta klientam.

 

Tā būvēju www.neslimo.lv

Edited by l27
Link to comment
Share on other sites

20-30 query pie katras lapas ielādes jau velk uz to, ka tu mēģini vienā lapas ielādes reizē izdarīt apmēram 5 reizes par daudz. Nemaz nerunājot par to, kas notiek pie 50query vienā lapā. Parēķini 100 pageview sekundē un tev ir uz db serveri 5000 query sec.

Link to comment
Share on other sites

Ja ielāde ir pēc id visiem, ka rāksta autors, tad ož pēc tā, ka autors nezin par join un izmanto vienu lielu selektu, no kura ņem id un selekto atsevišķi 20 reizes. Autor, labāk uzraksti ko tieši un kā tu selektē, tā tu ātrāk dabūsi optimizācijas padomus.

Edited by codez
Link to comment
Share on other sites

Ja join zinu. Izmantoju, šeit tas man nav nepieciešams.

 

1. Ir bloks. blokā ir tikai un vienīgi ID.

2. Šajā blokā man jāparāda, (piem.) virsraksts, teksts, vārds.

3. Viens kverijs izvada tikai un vienīgi nosaukumu, jebkurā vietā lapā, pēc ID pieprasījuma. un pārējie tāpat.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...