현재 위치: > 최신 기사 목록> opcache_get_status 함수에 의해 반환 된 데이터 구조는 무엇입니까? 각 필드의 의미를 이해하는 방법은 무엇입니까?

opcache_get_status 함수에 의해 반환 된 데이터 구조는 무엇입니까? 각 필드의 의미를 이해하는 방법은 무엇입니까?

gitbox 2025-08-22

opcache_get_status 함수에 의해 반환 된 데이터 구조는 무엇입니까? 각 필드의 의미를 이해하는 방법은 무엇입니까?

PHP에서 Opcache는 캐시 된 바이트 코드에 의해 PHP 스크립트의 실행을 가속화하는 캐싱 시스템입니다. opcache_get_status 함수는 Opcache의 현재 상태 정보를 얻는 데 사용할 수있는 매우 실용적인 디버깅 도구입니다. 이 기능을 통해 캐시 사용, 적중률 및 기타 성능 메트릭을 확인할 수 있습니다.

1. opcache_get_status 함수 소개

opcache_get_status 함수의 기본 구문은 다음과 같습니다.

 <span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-title function_ invoke__">opcache_get_status</span></span><span> ( </span><span><span class="hljs-keyword">bool</span></span><span> </span><span><span class="hljs-variable">$no_cache</span></span><span> = </span><span><span class="hljs-literal">false</span></span><span> )
</span></span>

그 중 $ no_cache 매개 변수는 캐시를 사용하여 데이터를 얻을 것인지 결정합니다. 기본값은 False , 즉 캐시의 데이터를 읽습니다. true 로 설정되면 현재 캐시 컨텐츠를 무시하고 Opcache 캐시에서 직접 데이터를 읽습니다.

이 함수는 Opcache 상태 정보를 포함하는 연관 배열을 반환합니다. 아래에서는 배열의 각 필드의 의미를 자세히 설명합니다.

2. opcache_get_status 에 의해 반환 된 데이터 구조

opcache_get_status가 반환 한 배열에는 Opcache스크립트의 두 가지 주요 부분이 포함되어 있습니다. 특정 필드와 그 의미는 다음과 같습니다.

2.1 opcache 부품

이 섹션에는 Opcache와 관련된 글로벌 통계가 포함되어 있으며 주요 필드에는 다음이 포함됩니다.

  • 버전 : OpCache의 현재 버전 번호.

    예 : "7.4.3" , "8.0.0"

    이 필드는 현재 버전의 Opcache를 알려줍니다.이 버전은 업데이트가 필요한지 확인하는 데 사용할 수 있습니다.

  • memory_usage : 다음 서브 필드를 포함한 메모리 사용 통계 :

    • 사용 된 _memory : 사용 된 메모리 바이트 수를 opcache.

    • free_memory : opcache에 사용할 수있는 메모리 바이트 수입니다.

    • WASTET_MEMORY : 일반적으로 캐시의 잘못된 데이터 또는 단편화로 인해 메모리 바이트 수가 낭비됩니다.

    • current_wasted_percentage : 전체 메모리로서 전류 낭비 메모리의 백분율.

    예:

     <span><span><span class="hljs-string">"memory_usage"</span></span><span> =&gt; </span><span><span class="hljs-keyword">array</span></span><span>(
        </span><span><span class="hljs-string">"used_memory"</span></span><span> =&gt; </span><span><span class="hljs-number">12345678</span></span><span>,
        </span><span><span class="hljs-string">"free_memory"</span></span><span> =&gt; </span><span><span class="hljs-number">8765432</span></span><span>,
        </span><span><span class="hljs-string">"wasted_memory"</span></span><span> =&gt; </span><span><span class="hljs-number">123456</span></span><span>,
        </span><span><span class="hljs-string">"current_wasted_percentage"</span></span><span> =&gt; </span><span><span class="hljs-number">1.2</span></span><span>
    )
    </span></span>
  • opcache_hit_rate : 캐시 히트의 비율을 나타내는 Opcache의 적중률은 일반적으로 백분율로 반환됩니다.

    예 : 98.4%

    이 필드는 캐시 효과를 측정하기위한 핵심 지표입니다. 값이 높을수록 캐시 적중률이 높아지고 성능이 높아집니다.

  • CACHE_FULL : OpCache 캐시가 가득 찼는지를 나타내는 부울 값. True는 캐시가 가득 찼음을 의미하고, False는 캐시가 가득 차 있지 않음을 의미합니다.

    예 : 또는 거짓

  • RETART_PENDING : OpCache를 다시 시작할 계획이 있는지 여부를 나타내는 부울 값. True는 재시작 중이라는 것을 의미하며, False는 다시 시작할 필요가 없음을 의미합니다.

  • RETART_IN_PROGRESS : 캐시 재시작이 수행되는지 여부를 나타내는 부울 값. 사실 이라면 Opcache가 캐시 재시작 작업을 수행한다는 것을 의미합니다.

2.2 스크립트 섹션

스크립트 섹션에는 다음 필드를 포함하여 현재 캐시의 모든 스크립트의 상태 정보가 포함되어 있습니다.

  • 파일 이름 : 스크립트의 파일 경로.

    예 : "/var/www/html/index.php"

  • opcache_hits : 스크립트의 횟수는 캐시 히트입니다. 즉, 스크립트가 캐시에서로드되는 횟수입니다.

  • Memory_Consumption : Opcache의 스크립트가 차지하는 메모리 바이트 수.

  • last_used : 스크립트가 마지막으로 사용한 타임 스탬프.

  • 타임 스탬프 : 스크립트가 처음으로 캐시하는 타임 스탬프.

  • 사용자 : 스크립트의 사용자 정보, 일반적으로 스크립트가 실행될 때 사용자 이름입니다.

2.3 기타 필드

위에서 언급 한 공통 필드 외에도 opcache_get_status 에 의해 반환 된 배열에는 특정 디버깅 정보 및 구성 정보가 포함될 수 있으며, 이는 PHP 버전 및 OPCache 구성에 따라 다릅니다.

3.이 필드를 이해하는 방법은 무엇입니까?

이 필드의 의미를 이해하면 Opcache 사용을 모니터링하고 최적화하는 데 도움이 될 수 있습니다. 이 정보를 해석하고 활용하는 방법은 다음과 같습니다.

  • 메모리 사용 : 사용 된 _memoryfree_memory 필드는 캐시 메모리 사용을 이해하는 데 도움이 될 수 있습니다. 사용 된 _memory가 대부분의 메모리를 차지하고 free_memory 가 낮 으면 캐시 메모리를 늘리거나 캐시가 정리되어야한다는 것을 의미 할 수 있습니다. Wasted_Memorycurrent_wasted_percentage 의 값은 캐시에 단편화 문제가 있는지 여부를 결정하는 데 도움이 될 수 있습니다. 낭비 된 메모리의 비율이 높으면 캐시 설정을 조정하여 성능을 최적화 할 수 있습니다.

  • 적중률 : opcache_hit_rate는 Opcache 성능의 중요한 지표입니다. 적중률이 높으면 Opcache 캐시 전략이 잘 작동하며 대부분의 PHP 스크립트는 캐시에서로드되어 더 빠르게 실행됩니다. 적중률이 낮은 경우 Opcache 구성을 조정하거나 많은 스크립트가 자주 수정되어 캐시 실패가 발생하는지 확인해야 할 수도 있습니다.

  • 캐시 재시작 : RETART_PENDINGROTHART_IN_PROGRESS 필드는 OpCache가 다시 시작 상태인지 이해하는 데 도움이 될 수 있습니다. 캐시가 자주 다시 시작되면 부적절한 구성 또는 기타 이유 때문일 수 있습니다. Opcache 구성 파일을 확인하여 조정해야 할 매개 변수가 있는지 확인해야합니다.

  • 스크립트 상태 : 스크립트 섹션에는 캐시에 모든 스크립트와 해당 상태 정보가 나열되어 있습니다. 이 정보를 통해 각 스크립트의 캐시 상태를 이해하고 어떤 스크립트에 캐시 적중률이 낮거나 어떤 스크립트가 더 많은 메모리를 차지하여 특정 스크립트를 최적화 할 수 있는지 즉시 발견 할 수 있습니다.

4. 요약

opcache_get_status 함수가 반환 한 데이터를 통해 Opcache 상태를 실시간으로 모니터링하여 PHP 스크립트의 실행 효율을 최적화 할 수 있습니다. 이러한 분야의 의미를 이해하고 분석하면 개발자가 OPCache를 효과적으로 구성하고 웹 사이트의 응답 속도 및 성능을 향상시키는 데 도움이 될 수 있습니다.