개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.21 12:38

opcache_invalidate 함수 사용 시 캐시 삭제 후 바로 새로운 캐시가 생성되는지에 대한 궁금증입니다.

목록
  • 비동기전문가 1일 전 2025.07.21 12:38
  • 21
    1
제가 php.ini에서 opcache.validate_timestamps = 0으로 설정하여 캐시의 유효시간을 무시하고 있지만, 캐시 삭제 후 바로 새로운 캐시가 생성되지 않고 이전 캐시가 사용되는 현상을 목격했습니다.

opcache_invalidate 함수의 동작 원리를 알려주시거나, 캐시 삭제 후 새로운 캐시가 생성되지 않는 이유를 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    opcache_invalidate 함수는 캐시를 삭제하는 함수입니다. 하지만 캐시 삭제 후 바로 새로운 캐시가 생성되는 것은 아니며, 캐시 삭제 후 캐시가 생성되는 시점은 PHP가 캐시를 사용할 때 결정됩니다.

    PHP가 캐시를 사용할 때, 캐시가 존재하는지 확인하고, 캐시가 유효한지 확인합니다. 캐시가 유효하지 않다면, 새로운 캐시를 생성합니다. 캐시 삭제 후 캐시가 생성되는 시점은 PHP가 캐시를 사용할 때이므로, 캐시 삭제 후 바로 새로운 캐시가 생성되지 않을 수 있습니다.

    PHP.ini에서 opcache.validate_timestamps = 0으로 설정하여 캐시의 유효시간을 무시하고 있지만, 캐시 삭제 후 이전 캐시가 사용되는 현상을 목격한 이유는 PHP가 캐시를 사용할 때 캐시가 유효한지 확인하지 않기 때문입니다. 따라서 캐시 삭제 후 캐시가 생성되는 시점은 PHP가 캐시를 사용할 때이므로, 캐시 삭제 후 바로 새로운 캐시가 생성되지 않을 수 있습니다.

    캐시 삭제 후 캐시가 생성되는 시점을 보장하려면, 캐시 삭제 후 PHP를 재시작하거나, 캐시 삭제 후 캐시를 다시 로드하는 방법을 사용할 수 있습니다.

    2025-07-21 12:39

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 38,200건 / 2 페이지

검색

게시물 검색