Op mijn server is het volgende aan de hand. Van tijd tot tijd krijg ik door drukte op de website last van hangende connecties. Deze sluiten niet meer uit zichzelf en zorgen ervoor dat de server erg traag wordt aangezien deze alle cpuresources opeten.
Even een voorbeeld van de processen op de server:
Zoals je ziet is proces 4222 al 3:07 bezig. Deze blijft net zolang hangen totdat ik hem kill.
Ik heb nu al een load van 1.40 met een zeer lage idle, maar dit wordt alleen maar erger naar mate dit proces blijft bestaan.
Wat zo vreemd is is dat deze mysqlconnectie niet ergens verder voor wordt gebruikt. Als ik een mysqlreset doe, draait de server weer gedurende onbepaalde tijd prima.
Mijn vraag is dus hoe kan ik ervoor zorgen dat ik geen mysqlprocessen meer heb die langer dan zeg 1 minuut blijven bestaan. Ik heb my.cnf al zoveel mogelijk proberen te optimizen. Deze kan ik indien nodig ook nog wel even posten, maar heb zelf geen idee welke settings te maken hebben de met tijdsduur van queries/connecties e.d Vooralsnog los ik het op door mysql om het uur te restarten
Maar dat is natuurlijk niet echt een oplossing. Alvast dank voor de antwoorden!
Even een voorbeeld van de processen op de server:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| 12:56:15 up 15 days, 47 min, 1 user, load average: 1.40, 0.94, 0.66
111 processes: 103 sleeping, 3 running, 0 zombie, 5 stopped
CPU states: cpu user nice system irq softirq iowait idle
total 90.0% 0.0% 8.6% 0.2% 0.2% 0.0% 1.0%
Mem: 2049724k av, 2025336k used, 24388k free, 0k shrd, 111792k buff
334116k actv, 1258936k in_d, 41728k in_c
Swap: 2040244k av, 4k used, 2040240k free 1836124k cached
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME CPU COMMAND
4222 mysql 25 0 12296 12M 2376 R 90.8 0.5 3:07 0 mysqld
4245 mysql 15 0 12296 12M 2376 S 5.4 0.5 0:04 0 mysqld
4223 mysql 16 0 12296 12M 2376 S 2.2 0.5 0:02 0 mysqld
4135 mysql 15 0 12296 12M 2376 S 0.2 0.5 0:00 0 mysqld |
Zoals je ziet is proces 4222 al 3:07 bezig. Deze blijft net zolang hangen totdat ik hem kill.
Ik heb nu al een load van 1.40 met een zeer lage idle, maar dit wordt alleen maar erger naar mate dit proces blijft bestaan.
Wat zo vreemd is is dat deze mysqlconnectie niet ergens verder voor wordt gebruikt. Als ik een mysqlreset doe, draait de server weer gedurende onbepaalde tijd prima.
Mijn vraag is dus hoe kan ik ervoor zorgen dat ik geen mysqlprocessen meer heb die langer dan zeg 1 minuut blijven bestaan. Ik heb my.cnf al zoveel mogelijk proberen te optimizen. Deze kan ik indien nodig ook nog wel even posten, maar heb zelf geen idee welke settings te maken hebben de met tijdsduur van queries/connecties e.d Vooralsnog los ik het op door mysql om het uur te restarten