현재 위치: > 최신 기사 목록> PHP 성능을 조정할 때 realpath_cache_size를 올바르게 사용하는 방법

PHP 성능을 조정할 때 realpath_cache_size를 올바르게 사용하는 방법

gitbox 2025-05-29

RealPath_Cache_Size 는 PHP 성능 최적화를 수행 할 때 종종 간과되지만 매우 유망한 구성 항목입니다. PHP가 파일 경로 해상도를 처리하는 방식에 영향을 미치며 모든 파일 작업에서 호출 할 수 있으므로 대규모 프로젝트에서 최적화 효과가 특히 명백합니다.

RealPath 캐시 란 무엇입니까?

php에서, 당신이, require , file_exists () 또는 is_readable () 함수를 포함하는 경우 PHP는 절대 경로로 전달되는 경로를 구문 분석해야합니다. 이 구문 분석 프로세스에는 디스크 IO, 특히 파일 시스템이 복잡하거나 많은 상징적 링크를 사용하는 시스템에서는 성능 집약적입니다.

이 프로세스 속도를 높이기 위해 PHP는 구문 분석 된 경로 결과를 캐시하고 반복 된 구문 분석을 피하는 "실제 캐시"를 제공합니다. 이 캐시의 크기는 RealPath_Cache_Size 에 의해 제어됩니다.

다음과 같은 방법으로 현재 RealPath 캐시 사용을 볼 수 있습니다.

<code> var_dump (realpath_cache_size ()); var_dump (realpath_cache_get ()); </코드>

realpath_cache_size를 설정하는 방법?

php.ini 파일에서 기본 realpath_cache_size는 16K 일 수 있으며 이는 복잡한 프로젝트에 충분하지 않습니다. 우리는 다음과 같이 가치를 높일 수 있습니다.

<code> realpath_cache_size = 4096k </code>

또는 런타임에 INI_SET를 통해 일시적으로 설정할 수 있습니다.

<code> ini_set ( 'realpath_cache_size', '4096k'); </코드>

가치가 클수록 더 좋습니다. 과도한 캐시는 메모리 폐기물을 유발할 수 있습니다. 권장되는 접근법은 실제 모니터링을 통해 크기를 조정하는 것입니다. realpath_cache_get () 함수를 결합하여 캐시 적중률과 현재 메모리 사용을 관찰 할 수 있습니다.

실제 응용 프로그램의 최적화 예

대규모 프레임 워크를 개발하거나 많은 수의 자동 부로에 의존하는 Laravel 애플리케이션을 실행하고 있으며 시스템에는 수천 개의 경로 해상도 작업이 있다고 가정합니다. RealPath_Cache_Size를 조정하지 않으면 특정 높은 하중에서 성능 병목 현상을 만날 수 있습니다.

간단한 단일 구성을 통해 조정 :

<code> realpath_cache_size = 4096k </code>

이는 PHP의 오버 헤드를 경로 해상도에서 크게 줄여서 전체 응답 속도를 향상시킬 수 있습니다.

Strace 또는 DTRUSS (MACOS)와 같은 도구를 통해 PHP 프로세스의 파일 시스템 호출 빈도를 모니터링하고 조정 전후에 비교 및 ​​분석을 수행 할 수도 있습니다.

온라인 환경에서 주목해야 할 사항

  1. 모니터링 유지 : RealPath_Cache_Get ()을 사용하여 캐시 사용을 정기적으로 분석하십시오.

  2. 합리적인 평가 : 과도한 값을 맹목적으로 설정하지 않고 시스템 메모리 및 성능 요구 사항을 평가하지 마십시오.

  3. Opcache와 함께 사용 : Opcache가 활성화되면 RealPath 캐시는 포함 된 파일 경로 해상도의 효율성을 더욱 향상시킬 수 있습니다.

  4. 다중 환경 구성 : 개발 환경은 메모리를 저장하기 위해 더 낮은 값을 설정할 수 있지만 생산 환경은이를 끄는 것이 좋습니다.

요약

RealPath_Cache_Size 는 PHP 성능 튜닝에서 키가 낮지 만 효율적인 도구입니다. 합리적으로 설정하면 파일 경로 해상도의 오버 헤드, 특히 큰 프레임 워크 및 복잡한 디렉토리 구조가있는 프로젝트의 오버 헤드를 크게 줄일 수 있습니다. 매일 개발 및 배포에서 PHP 응용 프로그램을 더 빠르고 안정적으로 실행하도록 정기적 으로이 매개 변수를 평가하고 조정할 수 있습니다.

캐시 컨텐츠를 깊이 또는 디버그로 보려면 다음 코드를 사용하여 현재 캐시 세부 사항을 출력 할 수 있습니다.

<code> print_r (realpath_cache_get ()); </코드>

RealPath_Cache_Size를 조정하는 것은 PHP가 우회를하고 직선을 더 취하는 것을 방지하는 것입니다.