MySQL over TCP results on CLOSE_WAIT state in PHP 5.3.8
| From: | php-list at dubistmeinheld dot de | Date: | Mon, 27 Feb 2012 12:06:43 +0000 |
| Subject: | MySQL over TCP results on CLOSE_WAIT state in PHP 5.3.8 | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-316781@lists.php.net to get a copy of this message | ||
Hi,
I have a MySQL server A, a server B with PHP 5.3.8 and a server C with PHP
5.3.3. I'm connecting to the MySQL server on A via TCP from B and C using an
internal network. Server B and C use the same PHP application. There are also
same PHP scripts that get data from the database and then calculate up to 30
minutes. I close all database connection before doing the calculation to save
connections (and ports) using:
$thread_id = mysqli_thread_id( $this->handle );
mysqli_kill( $this->handle, $thread_id );
mysqli_close( $this->handle );
During a review on our servers I discovered that server B has a lot of network
connection in the state "CLOSE_WAIT". Server C running the same PHP
application has not. I see the difference that server B is using mysqlnd and
server C not.
serverB# netstat -an | grep 3306
tcp 1 0 10.8.0.58:47455 10.8.0.1:3306 CLOSE_WAIT
serverA# cat firewall
Feb 17 16:21:49 www kernel: [6587053.325075] SFW2-OUT-ERROR IN= OUT=tun0
SRC=10.8.0.1 DST=10.8.0.58 LEN=40 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP
SPT=3306 DPT=47455 WINDOW=0 RES=0x00 RST URGP=0
Does anybody have an idea why this happens? How can I avoid this or
investigate in this? Is this a know issue?