我可能有一个基本的设计问题,我想我需要一些建议来解决这个问题。我的PHP脚本调用Mysqli函数来从数据库中检索信息。如果查询很长,则在查询完成之前服务器会变得无响应。这有很多负面影响,因为我有几十个用户同时连接,这会破坏他们的体验。
此行为是否正常(长时间MySQL查询时服务器已锁定)?可以解决吗?接下来的步骤是什么?有没有解决方法?
要明确的是,我需要的是其他用户能够正常使用该网站,而其他用户可能正在等待长时间的查询完成。
$querystring = "***long query***";
$process = mysqli_query($con, $querystring );
$rows = mysqli_fetch_assoc($process);
然后稍后循环结果。
我不得不说MySQL查询肯定可以改进,但有时我会发现查询已经优化的情况。
我的服务器正在运行Apache + Nginx和PHP-FPM
任何提示或指导?感谢