我是使用PHP 5.4.4版本,似乎无法使用mysqli的持久连接。具体来说,让我们看一下这个脚本:
<?php
$links = array();
for ($i = 0; $i < 15; $i++) {
$links[] = mysqli_connect('p:192.168.1.40', 'USER', 'PWD', 'DB', 3306);
}
sleep(15);
然后,当脚本正在运行时,打开另一个Shell并输入:
netstat -an | grep 192.168.1.40:3306
tcp 0 0 192.168.1.6:52441 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52454 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52445 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52443 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52446 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52449 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52452 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52442 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52450 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52448 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52440 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52447 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52444 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52451 192.168.1.40:3306 ESTABLISHED
tcp 0 0 192.168.1.6:52453 192.168.1.40:3306 ESTABLISHED
我认为这是一个错误:PHP应该只打开一个持久连接,而不是15个不同的连接。
这是真的吗?
谢谢大家。