2016-06-05 6 views
0

라이브러리와 디버깅에 대해 이해할 수없는 내용이 있습니다. CLIdex 작업에 xdebug 프로파일 링을 실행하면 xdebug의 cachegrind 파일의 결과로 총 5.5 초 동안 실행됩니다. . 내가 가진 것은 외부 웹 서비스에 접속하여 데이터를 가져오고 우리 데이터베이스에서 관련 데이터 세트를 검색하는 코드입니다. 전체적으로 약 300 개의 이상한 레코드를 안전하게 처리 할 수 ​​있습니다. 기어맨 작업자의 시간 제한을 20 초로 설정하고 제한을 400으로 늘리려고 시도하지만 아쉽게도이 많은 레코드를 처리 할 충분한 시간이 아닙니다. 내 수수께끼는 이것입니다 - 왜 xedbug는 300 레코드를 얻는 코드를 실행하는 데 5.5 초 밖에 걸리지 않는 반면 gearman은 400으로 증가하면 시간이 초과되어 20 초 이상 걸리는 것을 의미합니까? 때로는 320이나 310에서 타임 아웃하는 경우도 있습니다. 타임 아웃을 보장하는 한계 예제로 400을 선택했습니다. 누구 제안있어?Gearman 및 xdebug

+0

시간 제한을 설정 한 코드와 GEARMAN_TIMEOUT 반환 코드를 처리하는 코드를 표시 할 수 있습니까? –

답변

0

XHPROF를 설정하면 xDebug가 필요없이 호출되는 내용과 실행 시간을 정확하게 볼 수 있습니다.