gpt4 book ai didi

php - 在 AJAX 调用中使用 mysql_pconnect 时还需要注意什么

转载 作者:行者123 更新时间:2023-11-29 09:01:02 24 4
gpt4 key购买 nike

我构建了一个应用程序(MySQL/PHP),它(及时)可能会使用到远程(并且可能很慢)MySQL 服务器的连接。该应用程序使用 AJAX 耳语,频繁打开数据库连接。我做了一些客户端优化,但从未有足够的勇气使用持久连接,这可能是个好主意。

我担心空闲的mysql连接可能会超出服务器限制,导致需要重新启动服务器。所以我打算使用mysql.connection_timeout为15s,这会杀死限制后的每个空闲持久连接?或者它会阻塞系统资源直到服务器进程结束?

我不会在耳语中使用事务,并且每个锁都应该在连接关闭后释放,对吗?

还有其他我应该注意的持久连接问题吗? (我已经读过the documentation。)

最佳答案

使用 MySQL 的持久连接通常不会获得任何好处。它的连接协议(protocol)通常已经相当快了。当您使用常规非持久连接时,您所失去的是“干净”操作环境的保证。

如果您的任何脚本在事务处理过程中因任何原因终止或保留服务器端变量设置,则持久连接意味着当其他脚本再次拾取连接时,完成一半的事务仍然处于事件状态。

当这种情况发生时,你很容易陷入僵局。新脚本不知道它有一个旧的/脏的连接,MySQL无法看到原始的连接脚本已经消失并进行自己的清理,所以你最终会遇到一个垃圾遍地的环境。

话虽这么说,您可以使用 mysql.max_persistent 设置来限制 PHP 代表您保持打开的连接数量。无论您尝试从脚本建立多少个连接,PHP 都不会超过该限制,因此您可以将其设置为低于 MySQL 自己的 max_connections 设置。

关于php - 在 AJAX 调用中使用 mysql_pconnect 时还需要注意什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8616988/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com