모든 중요한 기능을 이제는 1800 줄의 단일 PHP 파일에 포함하도록 코드를 디자인했습니다.1800 라인 PHP 포함 속도를 높이려면 어떻게해야합니까? 페이지로드 속도가 10 초 /보기로 느려집니다.
간단한 "require_once ("codeBank.php ")"로 다른 PHP 파일 (예 : AJAX 프로세서)에서 호출합니다.
몇 가지 글로벌 배열과 많은 다른 기능이 포함되어 있어도 모든 기능을로드하는 데 약 10 초가 걸리는 것으로 나타났습니다. 예를 들어, 주요 AJAX 프로세서 코드는 간단한 구문 확인 (codeBank.php에 작동 기능이 저장 됨)을 수행하는 데 8 초 밖에 걸리지 않습니다.
require_once를 주석 처리 할 때 내 AJAX 응답 시간이 10 초에서 40ms로 빨라지므로 PHP가 1800 줄의 함수로 무언가를하려하고 있음을 분명히 알 수 있습니다. APC가 설치되어 있어도 놀랍습니다.
내 코드 속도를 100 밀리 초로 낮추려면 어떻게해야합니까? 캐시의 이점을 어떻게 든 얻지 못하고 있습니까? 단일 기능 뱅크 파일을 다른 부분으로 잘라야합니까? 응답 시간을 망칠 수있는 다른 미묘한 일이 있습니까?
PHP 작업이 스피드 충돌을 일으키는 데 도움이되는 도구는 무엇입니까?
==========================
[EDIT] 해결.
==========================
과 같이 많은 종류의 사람들이 주목 한 이유는 단지 가지고 논리적 이유가 없다 1800 라인 PHP 함수 라이브러리는 속도 저하를 야기합니다. 실제로 일어난 일은 더 긴 API 호출 함수 중 하나를 호출하는 디버그 라인이 있다는 것입니다. PHP 파일을 포함 할 때마다 원격 쿼리 데이터에서 전체 데이터 구조를 구성했습니다.
일단 내가 그 라인을 죽이면, 모든것이 30ms 응답으로 돌아갔습니다. 이상한 점은 require_once()가 AJAX 스크립트가 호출 될 때마다 php 파일을 여는 것입니다. 그러나 그것은 저 모양이 아니며 AJAX 스크립트가 끝날 때마다 닫히고 매번 다시 열리고 재 컴파일된다는 것을 잊고 있습니다.
이것은 WTF가 제작 한 것입니다. DailyWTFs, 즉. – aviraldg
명확하게 그 기능을 수행하고 대역폭의 톤을 저장 모듈로 나눕니다. 이렇게하면 코드를 더 깔끔하고 쉽게 처리 할 수 있습니다. –
줄 번호가 아닙니다. PHP 페이지가 길어서 빠르게로드됩니다. 나는 또한 총 길이의 10 배에 달하는 전체 인프라를 가지고 있으며 그로 인해 속도가 느려지지는 않습니다. – staticsan