php - 如果花费的时间太长,则中止选择查询

标签 php mysql

我有一个用 PHP 编写的 Web 应用程序。

此应用程序的一个功能是文档存档,它是另一台服务器上的 MySQL 数据库。而且这个存档服务器在性能方面非常不可靠,但不在我的控制之下。归档服务器经常得到长表锁,导致得到连接,但没有得到任何数据。

这通常会导致打开 MySQL 连接,从而使 Web 应用程序服务器的资源饱和。结果,整个 Web 应用程序变得缓慢/无法访问。

我想解耦这两个系统。

我认为我的 PHP 应用程序的合乎逻辑的方法是,如果它花费超过 1 或 2 秒来释放资源并向用户显示远程系统的消息,则中止 SELECT 查询没有及时回复。

但是如何最好地实现这样的解决方案?


更新:set_time_limit() 选项看起来很有前途。但并不完全令人满意,因为我无法向用户呈现“消息”,但至少它可能有助于防止资源饱和。

最佳答案

我认为你应该使用 maximum execution limit php 中提供的函数。

关于php - 如果花费的时间太长,则中止选择查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24389707/

相关文章:

mySQL 锁定用于简单的多重选择

Mysql:连接五个表

php - Composer 自定义发布包

php - 检查谁卸载了 Facebook 应用程序

php - 使用 PHP 从 MySQL 添加天数到当前日期

php - 以表单提交后计算 csv 文件中的行数

mysql - 如何在共享数据库环境中为 mysql my.ini 文件提供自定义配置

php - 消息系统的收件箱sql查询

sql - 从多个数据库获取数据

php - 使用 MySQL 数据库中的 url 加载 img src =""