Tcp spojenie na localhoste pre php mysql
Jozef Drahovsky
freebsdcz2 at jozef.drahovsky.sk
Sat Feb 25 01:20:51 CET 2017
Testoval rozdiel dvoch druhov spojenia Apache+PHP servera s MySQL
serverov v ramci localhostu
Pri tychto testoch som narazil na jednu zvlastnost a to, ze na FreeBSD 11.0
ostava visiet polovica tcp spojenia na localhoste.
Davam sem vysledok celeho testu lebo odhadujem, ze viacerych zaujme
samotny test.
Regulerne jedine tcp spojene (su tu dva riadky lebo oba konce spojenie
su na tom istom pocitaci)
127.0.0.1.3306 127.0.0.1.27804 ESTABLISHED
127.0.0.1.27804 127.0.0.1.3306 ESTABLISHED
Po ukonceni spojenia jeden smer konketene z PHP na SQL zostane visiet,
kym nevytimeoutuje.
127.0.0.1.27804 127.0.0.1.3306 TIME_WAIT
Tusi niekto dovod tohto ukazu?
Kym som to napisal, uz som prisiel na dovod preco to tak je :)
Jozef
Cely test a komentarmi:
--- Pred testom - vsetko ok ziazne vysiace spojenie ----------------------
sockstat | grep mysql.sock 2>&1
mysql mysqld 1820 34 stream /tmp/mysql.sock
netstat -n -a | grep 3306 2>&1
tcp4 0 0 127.0.0.1.3306 *.* LISTEN
--- aktivne spojenie cez sokety vsetko
ok-------------------------------------
Connect: $mysqli1 = new mysqli("localhost", $sql_user, $sql_pass, $sql_db");
typ: Localhost via UNIX socket
sockstat | grep mysql.sock 2>&1
www grep 7549 20 stream -> /tmp/mysql.sock
www sockstat 7548 20 stream -> /tmp/mysql.sock
www sh 7547 20 stream -> /tmp/mysql.sock
www httpd 7478 20 stream -> /tmp/mysql.sock
mysql mysqld 1820 34 stream /tmp/mysql.sock
mysql mysqld 1820 45 stream /tmp/mysql.sock
netstat -n -a | grep 3306 2>&1
tcp4 0 0 127.0.0.1.3306 *.* LISTEN
--- ukoncenie spojenia cez skoety znova vsetko ok
---------------------------
sockstat | grep mysql.sock 2>&1
mysql mysqld 1820 34 stream /tmp/mysql.sock
netstat -n -a | grep 3306 2>&1
tcp4 0 0 127.0.0.1.3306 *.* LISTEN
---- aktvine spojenie cez tcp na localhoste je tiez ok
-------------------------
Connect: $mysqli2 = new mysqli("127.0.0.1", $sql_user, $sql_pass,
$sql_db, 3306);
typ: 127.0.0.1 via TCP/IP
grep mysql.sock 2>&1
mysql mysqld 1820 34 stream /tmp/mysql.sock
netstat -n -a | grep 3306 2>&1
tcp4 0 11 127.0.0.1.3306 127.0.0.1.27804 ESTABLISHED
tcp4 0 0 127.0.0.1.27804 127.0.0.1.3306 ESTABLISHED
tcp4 0 0 127.0.0.1.3306 *.* LISTEN
--- ukoncenie spojenia cez tcp ma problem polovica spojenie zastala visiet
sockstat | grep mysql.sock 2>&1
mysql mysqld 1820 34 stream /tmp/mysql.sock
netstat -n -a | grep 3306 2>&1
tcp4 0 0 127.0.0.1.27804 127.0.0.1.3306 TIME_WAIT
tcp4 0 0 127.0.0.1.3306 *.* LISTEN
--- kontrola po dalsich 10 sekund --- bez zmeny visi dalej a caka na timeout
sockstat | grep mysql.sock 2>&1
mysql mysqld 1820 34 stream /tmp/mysql.sock
netstat -n -a | grep 3306 2>&1
tcp4 0 0 127.0.0.1.27804 127.0.0.1.3306 TIME_WAIT
tcp4 0 0 127.0.0.1.3306 *.* LISTEN
More information about the Users-l
mailing list