문제

런타임 벤치마킹을 통한 PHP 코드의 최적화는 간단합니다. 코드 블록 주변의 마이크로 타임 ()을 통해 $ 시작 및 $ 종료 시간을 추적하십시오 - 나는 마이크로 타임 () 사용과 관련된 답을 찾고 있지 않습니다.

내가하고 싶은 것은 Code-Parse/Op-Code-Tree-Building Time을 실행하기 위해 PHP의 시간을 측정하는 것입니다. 내 추론은 () 모든 수업을 포함하는 것이 쉽지만 ~할 것 같다 사이트에있는 모든 페이지에 필요한 CPU 오버 헤드는 "무료"할 수 없습니다. "비싼"구문 분석 시간이 실제로 얼마나되는지 알고 싶습니다.

APC와 같은 Opcode 캐시가 ~ 아니다 시나리오의 일부.

PHP에서 구문 분석 시간의 측정이 mod_php에서 일어날 일이라는 것이 맞습니까?

편집하다: 가능하면 고려하십시오 $_SERVER['DOCUMENT_ROOT'] 코드 사용이 도움이됩니다. 명령 솔루션은이 작업을 수행하는 데 약간의 땜질이 필요할 수 있습니다 (그러나 여전히 귀중한 답변).

도움이 되었습니까?

해결책

예. 거기 있습니다.

<?php return; rest of the code ?>

또는

<?php whole code; $%^parse erorr!@! ?>

그런 다음 빈 스크립트를 실행하는 시간을 비교하십시오

time php empty.php

시간이 지남에 따라 위에서 언급 한 추가 사항이있는 일반 스크립트를 실행 (또는 실패)하는 데 시간이 걸립니다.

time php test.php

Core2DUO 2.4GHz에서는 큰 파일 에이 방법을 사용했으며 초당 1.5와 4.5MB의 PHP 코드를 구문 분석 할 수 있습니다 (코드의 복잡성에 크게 의존).

다른 팁

당신이 찾고있는 상세한 분석의 경우 Xdebug를 구현하는 것 같습니다.http://xdebug.org/) 코드를 세그먼트 된 조각으로 자르면 가장 큰 정보를 제공합니다.

한 가지 방법은 명령 줄에서 스크립트의 실행을시기 할 수 있습니다.

예를 들어 Linux에서 :

$ time php5 -r 'echo "Hello world";'
Hello world
real    0m1.565s
user    0m0.036s
sys     0m0.024s

그것이 전혀 도움이됩니까? 아마도 다른 스크립트간에 상대 시간을 발견하는 데 도움이되지만 Apache 모듈을 통해 취한 시간을 나타내지 않을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top