Py学习  »  DATABASE

当mysqli重新连接持久连接时,如何修复“服务器已离开”警告?

luc • 4 年前 • 401 次点击  

$db = new mysqli("p:10.0.0.1", "user", "pass");

我看了下面的问题:

还有其他一些。它们都与我的问题不同:它们要么有长时间运行的脚本或查询,要么询问如何在出现此错误时自动重新连接。在我的例子中,它不是一个长时间运行的脚本(它是一个连接池),也不是一个错误:脚本看起来工作得很好,它只是输出这个丑陋的警告。PHP的连接池只包含自那时起超时的连接。

在我以前的服务器上,我很少看到这个警告。事实上,挂页(现在已解决)存在一个问题,它通常会在几分钟后显示此警告或错误(我不记得是哪个)。我从来没弄清楚是什么问题,但似乎是相关的。

我想避免更改每个脚本,因为服务器上运行着数百个小型应用程序(每个都是独立的,并且有自己的数据库凭据)。添加 @ 在每个连接前面都有一个副作用,即它抑制了所有错误,而不仅仅是这个特定的错误,并且感觉像是一个解决方法,而不是解决底层问题。

这只是PHP中的一个bug,还是有一个解决它的配置设置?我看到有人建议马里亚行延长暂停时间,但这只是减少了我们看到警告的频率,而不是从根本上解决问题。PHP可以不时地检查它的池,或者只是丢弃池中的旧连接吗?

我还查看了文档页面( 1 , 2 )但是文件和评论都提到了这个问题。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/57164
 
401 次点击