최근이 상황에서 아무 것도 변경하지 않았지만 최근에는 원격 서버에 대한 mysqli_connect()가 매우 느립니다 (30 초 최대 실행 시간에 도달하는 시간의 절반). 작동되면 응답 시간은 28 ~ 30 초입니다.mysqli_connect()가 갑자기 매우 느림
두 서버 모두에서 MySQL을 다시 시작했습니다. PHP 스크립트가있는 서버는 로컬 WAMP 서버이고 원격 서버는 LAMP 스택입니다. LAMP 서버는 WAMP 서버가 요청하는 것과 동일한 정보를 제공합니다.
$mtime = microtime();
$mtime = explode(" ",$mtime);
$starttime = $mtime[1] + $mtime[0];
$this->conn = mysqli_connect($this->host,$this->user,$this->password) or die(mysqli_error($this->conn));
$etime = microtime();
$etime = explode(" ",$etime);
$endtime = $etime[1] + $etime[0];
$totaltime = ($endtime - $starttime);
echo('<!--mysqli_connect took: '.$totaltime.' seconds-->');
페이지 (이 max_execution_time을 타격에 대한 500 응답을 제공하지 않는 경우)이 표시됩니다 :
<!--mysqli_connect took: 28.975151777267 seconds-->
를 쿼리는 문제이다) 대신이 mysqli_connect (처럼 보이는 문제로 나타나지 않습니다
원격 LAMP 서버에 동일한 코드가 표시됩니다 :
<!--mysqli_connect took: 0.036190032958984 seconds-->
이 코드를 업데이트하거나 일하는이 있기 때문에 어떤 구성을 변경하지 않았습니다. WAMP 서버에서 30 초를 초과하면 max_execution_time 초과 오류를 제외하고 두 서버에서 오류가 발생하지 않습니다. 누구든지 어떤 제안이 있습니까?
읽어 주셔서 감사합니다.
연결에 대한 수요를 충족시키기 위해 서버에 사용 가능한 연결이 충분합니까? 또는 쿼리/연결을 쌓아 올릴 수있는 장기 실행 쿼리가 있습니까? –
재시작 후 10 분 :'max_connections'가 151로 설정되면, pma는'max. concurrent connections'은 6이고'threads_connected'는 3이고'threads_created'는 23입니다. 느린 쿼리가 기록되지 않았습니다. mysqli_connect는 다시 시작한 직후에도 30 초 이상 걸린다. –
mysqltuner는 사용 가능한 연결의 최대 사용법을 보여줍니다. 5 % (9/151) –