2011-12-08 2 views
2

현재 실행중인 모든 PHP 스크립트의 현재 상태를 볼 수있는 기능을 찾고 있습니다.이 시점에서 얼마나 많은 메모리/io/CPU를 사용하고 있는지 보여줍니다.PHP는 리눅스의 최상위 명령어와 같습니다.

나는 많은 플러그인이 설치되어있는 워드 프레스 웹 사이트를 운영하고 있으며 현재 많은 플러그인 중 하나와 관련된 것으로 의심되는 성능 문제가 있습니다.

어떤 스크립트/플러그인이 가장 많은 IO/메모리/CPU를 사용하고 있는지 확인하는 빠른 방법을 찾고 있습니다.

+0

확실하지 않음 질문, * 그러나 * ... 귀하의 운영 체제/아키텍처에 대한 자세한 정보를 추가하십시오. 이런 식으로 할 수 있도록 AFAIK가 PHP에 내장되어 있지는 않지만 서버가 어떻게 설정되어 있는지에 따라 OS를 통해 무언가를 할 수도 있습니다. – DaveRandom

답변

2

Xdebug 확장자를 설치하고 profiling functions을 사용할 수 있습니다. 프로파일은 각 기능에 소요 된 시간을 표시하므로 많은 시간을 소비하는 WP 플러그인을 찾을 수 있습니다.

+0

+1 전화를 걸면 Xdebug를 잊어 버렸습니다. – DaveRandom

0

PHP 내에서 '기본적으로 작동하는 명령이나 유틸리티가 없습니다.

아파치 태그했기 때문에, 아파치의 상태 모듈에보고 준비하시기 바랍니다 http://httpd.apache.org/docs/2.0/mod/mod_status.html

출력은 물론이 웹 서버에 루트 액세스 권한을 필요로 http://www.apache.org/server-status

처럼 간다,하지만 나는 그것을 믿는다 유용한 정보를 보여줍니다. 이렇게하면 가장 많은 CPU 시간을 사용하는 URL이 표시됩니다. 더 자세히 조사하려면 (언급 한) Xdebug와 같은 프로파일 러가 필요합니다.

2

나는 (그것을 매우 사기 구문 분석,하지만 작동하지만, 원하는 사람은 깔끔한 멀리 작동하시기 바랍니다 만들기 위해) 빠른 PHP 스크립트를 한이에 대한 설명되지 않는 downvote의 정당성에 대한

<?php 
echo (" <h2>Processes : </h2> <br> <center>"); 
$cmd = `/usr/bin/top -b -n1 `; 

//// parse the page ////////////////// 
$cmd=str_replace("  "," ",$cmd); 
$cmd=str_replace("  "," ",$cmd); 
$cmd=str_replace(" "," ",$cmd); 
$cmd=str_replace(" "," ",$cmd); 
$cmd=str_replace(" "," ",$cmd); 
$cmd=str_replace(" ","</td><td>",$cmd); 
$cmd=str_replace("\n","</td></tr><tr><td>",$cmd); 
$cmd=str_replace("<tr><td></td><td>","<tr><td>",$cmd); 
$cmd=str_replace("<tr><td>PID","<tr><td COLSPAN=10 height=50></td></tr><tr bgcolor=e0e0e0><td>PID",$cmd); 
/////////////////////////////////////// 

echo '<table width=900 align=middle border=0><tr><td>'; 
echo $cmd; 
echo '</td></tr></table>'; 
?>