当我运行以下php脚本时,它会显示数据库端口处于time_wait模式2分钟,然后才会断开连接。
PHP代码:
<?php
$db_host = "127.0.0.1";
$db_user = "user";
$db_pass = "pass";
$db_dbase = "database";
$mysqli = new mysqli("$db_host", "$db_user", "$db_pass", "$db_dbase");
$mysqli->close();
?>
IPTSTATE
显示接下来2分钟的time_wait模式下的数据库tcp连接。
我只是想知道如何在php脚本完成后立即删除连接?
答案 0 :(得分:0)
我怀疑这与Persistent connections
中为{MySQL}设置的php.ini
有关。
Persistent connections manual page
基本上,一旦连接“关闭”,它会挂起一段时间以防再次使用(在大型Web应用程序中很可能)。然后,如果再次需要它,则节省了创建新连接的时间和资源,因为已经有人在等待。
您要在php.ini
中检查的设置是:
[MySQLi]
; Maximum number of persistent links. -1 means no limit.
; http://php.net/mysqli.max-persistent
mysqli.max_persistent = -1
; Allow or prevent persistent links.
; http://php.net/mysqli.allow-persistent
mysqli.allow_persistent = On
更改这些可能会改变您所看到的行为。