我有一个连接到MySQL的PHP脚本执行一些操作并结束。
最后有一个mysqli_close($link);
声明。
我仍然在MySQL进程列表中为该用户设置了休眠进程,并且无法确定从何处开始?
据我所知,一旦PHP脚本结束,它应该关闭连接,即使最后没有mysqli_close
(但也有一个)。
那个用户的睡眠进程在哪里?
如果我重新启动httpd
,他们都会死。
答案 0 :(得分:2)
mysqli提供持久连接。也就是说,它在PHP开发人员的连接模型和dbms的模型之间提供了一个层。
当您使用持久连接时,PHP程序将关闭与mysqli_close()
的连接。但是,与运行DBMS的连接由PHP运行时维护,可以进行下一次打开调用。
这在繁忙的网站上提供了巨大的加速,因为从PHP运行时(或任何其他dbms客户端)和dbms打开连接是很昂贵的。
你好的圆形空闲连接数(其中十个)对我来说就像一个持久的连接池。
这可以解释你所看到的吗?