牛骨文教育服务平台(让学习变的简单)
博文笔记

php使用mysql-timeout包,解决sql语句查询超时问题

创建时间:2016-09-26 投稿人: 浏览次数:1160

先放地址:https://github.com/wwaayyaa/mysql-timeout


php遇到慢sql的时候,一般就是调整php的最大执行时间,mysql的执行时间等配置。

但是有时候想灵活的针对每一句sql做不一样的超时设置。

特别是在cli模式的php中,如果sql操作等待,则当前进程一直阻塞直接影响整个进程。


如果你希望某个页面操作的sql能在短时间内要么返回要么超时,免得页面一直在那里loading...

如果你希望在cli模式下多进程操作数据库,并且每个进程都能不卡死在db上(如workerman的task进程池,专门用于做db等耗时的io操作。但是如果任务量巨大,会导致所有进程繁忙,而此时你db挂了,那么整个task进程池就会一直阻塞,导致整个业务瘫痪,其实博主我就是遇到这个问题了)。


那么可以试试这个包,博主在尝试了几种方式都失败之后。(具体尝试了什么,见 《关于php pdo连接mysql,查询超时问题》)

根据官方mysqli-async所写的。



声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。