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

coldplay.xixi
coldplay.xixi 原创
2023-03-05 09:32:01 2231浏览

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

相关学习推荐: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核实处理。