Portál AbcLinuxu, 12. května 2025 16:51

Dotaz: mysql a vysoky load serveru

5.10.2006 22:12 fluidz
mysql a vysoky load serveru
Přečteno: 330×
Odpovědět | Admin
zdravim,

muj problem se tyka vysokeho zatizeni serveru, kdyz (pres php) mysql daemonu prijde slozitejsi query. Server je pote pretizeny (load i pres 5) do te doby, dokud nerestartuji mysqld. Lze nejak omezit toto zatizeni? v php.ini mam nastaveny max_execution_time = 30, ale nepomaha to, server je v tu dobu zabrzdeny kvuli mysql...

mysql-4.1.21 apache-2.2.3 php-5.1.6

PS: lze vubec nejak regulovat zatizeni (cpuload) serveru u vsech/vybranych procesu? - /etc/limits neni resenim, tam se da nastavit pouze max cpu time, coz neni muj pripad. Co jsem se docetl, tak kernel nic takoveho sam od sebe neumoznuje...

diky za odpovedi
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

6.10.2006 02:29 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Load je priblizne receno pocet procesu ktere cekaji na cpu, pocet je prumerovany vzdy za urcite obdobi. Je dulezite znat jeste skutecne zatizeni CPU v userspace a kernel space. Pouzij top nebo lepe htop.

Vstupne vystupni operace (zapis na disk treba) obvykle mohou generovat vysoke zatizeni v kernelspace, system ma pak velmi spatnou odezvu. Kernelspace proces nemuzes ovlivnovat.

Procesu v userspace muzes dat nizssi prioritu - a to i za behu. Pokud prijde jiny proces s pozadavkem na cpu, dostane prednost. Predchozi proces s nizssi prioritou ceka. Z toho je videt, ze uprava priority ma smysl v okamziku, kdy je aktivnich vice procesu zaroven.

Mysql bude generovat zatizeni pravdepodobne jen v okamziku, kdy ziskava vysledek. Pak zatizeni poklesne. Pokud bude zatizeni v kernel space, muze pomoci rychljsi disk, sbernice, lepsi ovladac radice apod. Pokud v user space, pomuze optimalizovat mysql (nastavenim ci kompilaci) a predevsim a hlavne otimalizaci toho dotazu (poradi subselectu, pouziti indexu, uchovavani mezivysledku v tabulce, query cache serveru). Je treba si rovnez overit, ze vytizeni negeneruje php. Trvani sql dotazu je idealni testovat pres radkoveho klienta - odstrani se vliv php.
-- OldFrog
6.10.2006 06:48 Tomáš Janeček | skóre: 12
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
Odpovědět | | Sbalit | Link | Blokovat | Admin
jaka query? Muzes uvest priklad? To co chces s DB tou query udelat se udela? (tim myslim, pokud chces zapisovat, zapise se to?)
Něco děsně chytrýho a vtipnýho
6.10.2006 09:20 mireceq
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tiez by som bol zvedavy na ten query. Su tabulky v DB dobre navrhnute, znormalizovane? Pouzivate indexy? Napr. mne sa minule pridanim indexu zrychlil query o 1500% :) Optimalizacia DB je zrejme riesenie....
25.10.2006 20:37 trip
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
kde najdem prosim ta nieco o tej indexacii? lebo nejak to nemozem nikde najst...diik
25.10.2006 20:43 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
http://en.wikipedia.org/wiki/Index_%28database%29

V každé knížce o databázích (teda o základních pojmech v databázích :-) )
25.10.2006 22:11 cronin | skóre: 49
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
Tomu, kto sa chce nieco dozvediet o fungovani db enginu vrelo odporucam knihu "Oracle - navrh a tvorba aplikaci", ktoru napisal Thoma Kyte. Je aj v cestine ("ta modra"). Je sice specificka pre Oracle (a nie je najlacnejsa), ale ja som mnoho z nej pouzil a pre PostgreSQL. Je to napinavejsie citanie ako Grisham a Cook dohromady.
25.10.2006 22:07 cronin | skóre: 49
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
Mozem sa podrypovacne spytat, v akych jednotkach si meral rychlost a co si zobral za zaklad, ked sa ti "query zrychlil o 1500%"?
6.10.2006 15:29 dush
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkuste si zapnout logovani dlouhych dotazu. Ty by pak stalo za to prozkoumat blize.
25.10.2006 22:36 cronin | skóre: 49
Rozbalit Rozbalit vše Re: mysql a vysoky load serveru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dotaz mi pripada ako FAQ.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.