Zdravím,
nějak se mi nedaří zjistit příčinu problému vytěžování mysql.
Jedná se o nahodilou situaci. Někdy, kdykoliv v průběhu dne se stane, že apache zničehonic začne
generovat connectiony do DB, tím se web server zpomalí natolik, že je v podstatě nepoužitelný nebo se MYSQL úplně odstaví a v logu píše:
"too many connections to database"
Vždy pomůže restart apache, ale opět do chvíle, než "něco" znovu začne generovat spojení do DB.
Je úplně jedno kdy...ráno, odpoledne, v noci...úplně nahodile.
Jedná se o dva servery v clusteru (zdrojové kódy) + jeden server, kde je DB.
Netstat na web serveru s grepem na port 3306 říká:
..............
tcp 0 0 192.168.2.161:36722 192.168.2.164:3306 SPOJENO 32334/apache2
tcp 0 0 192.168.2.161:36760 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36464 192.168.2.164:3306 SPOJENO 32445/apache2
tcp 0 0 192.168.2.161:36669 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36765 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36540 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36659 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36526 192.168.2.164:3306 SPOJENO 32416/apache2
tcp 0 0 192.168.2.161:36667 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36989 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36603 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36591 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36497 192.168.2.164:3306 SPOJENO 32430/apache2
tcp 0 0 192.168.2.161:36538 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36402 192.168.2.164:3306 SPOJENO 32341/apache2
tcp 0 0 192.168.2.161:36630 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36620 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36599 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36536 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36472 192.168.2.164:3306 SPOJENO 32513/apache2
tcp 0 0 192.168.2.161:36698 192.168.2.164:3306 TIME_WAIT -
tcp 0 0 192.168.2.161:36889 192.168.2.164:3306 SPOJENO 32514/apache2
..............
Je to pouze část. Těch connectionů do DB je přes 200.
netstat -natp | grep apache | wc -l
..říká až 450 spojení.
Zajímavé je ale to, že servery v clusteru mají samozřejmě virtuální IP, na kterou chodí požadavky, tato virtuální IP je 192.168.2.160.
V netstatu tento požadavek směruje ale z 192.168.2.161 a nahodilého portu, což je fyzická IP toho serveru, z čehož usuzuji, že to dělá nějaký interní proces na serveru, který využívá apache.
Což mě ale moc nenapadá který...antivir clamav nezaznamenal problém. Resp předtím tam viry byly, ale ty jsou všechny odstraněny.
Napadá někoho, jak zjistit, co konkrétně má na svědomí connectiony do DB? Něco to musí spouštět, ikdyby to byl vir, musí se nějak spustit.
Zkoušel jsem také lsof -p $PID, ale mezi výpisem souborů jsem opět nějaký neznámý soubor nenašel..
Zapnul jsem i globální log na databázovém serveru, čili jsem viděl všechny query, ale nic nápadného jsem nezaznemanl.. (ikdyž jsem v tom množství mohl něco přehlédnout)