首页  >  文章  >  后端开发  >  PHP如何实现访问MySQL的查询超时

PHP如何实现访问MySQL的查询超时

coldplay.xixi
coldplay.xixi原创
2020-08-27 09:16:232853浏览

PHP实现访问MySQL的查询超时方法:1、 修改客户端,比如mysqli的query代码,加入定时器,超时则返回;2、修改Mysql中的vio代码,因为mysql的网络处理底层都是经过vio的操作。

PHP如何实现访问MySQL的查询超时

相关学习推荐:mysql教程

PHP实现访问MySQL的查询超时方法:

在libmysql中, 是提供了MYSQL_OPT_READ_TIMEOUT设置项的, 并且libmysql中提供了设置相关设置项的API, mysql_options:

目前只有mysqli支持

<?php
$mysqli = mysqli_init();
$mysqli->options(11 /*MYSQL_OPT_READ_TIMEOUT*/, 1);
$mysql->real_connect(***);

不过, 因为在libmysql中有重试机制(尝试一次, 重试俩次), 所以, 最终我们设置的超时阈值都会三倍于我们设置的值.

也就是说, 如果我们设置了MYSQL_OPT_READ_TIMEOUT为1, 最终会在3s以后超时结束. 也就是说, 我们目前能设置的最短超时时, 就是3秒…

1. 修改客户端,比如 mysqli 的 query 代码,加入定时器,超时则返回

2. 修改 Mysql 中的vio代码,因为mysql的网络处理底层都是经过vio的操作

想了解更多相关学习,敬请关注php培训栏目!

以上是PHP如何实现访问MySQL的查询超时的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关文章

查看更多