
opcache_invalidate 함수는 캐시를 삭제하는 함수입니다. 하지만 캐시 삭제 후 바로 새로운 캐시가 생성되는 것은 아니며, 캐시 삭제 후 캐시가 생성되는 시점은 PHP가 캐시를 사용할 때 결정됩니다.
PHP가 캐시를 사용할 때, 캐시가 존재하는지 확인하고, 캐시가 유효한지 확인합니다. 캐시가 유효하지 않다면, 새로운 캐시를 생성합니다. 캐시 삭제 후 캐시가 생성되는 시점은 PHP가 캐시를 사용할 때이므로, 캐시 삭제 후 바로 새로운 캐시가 생성되지 않을 수 있습니다.
PHP.ini에서 opcache.validate_timestamps = 0으로 설정하여 캐시의 유효시간을 무시하고 있지만, 캐시 삭제 후 이전 캐시가 사용되는 현상을 목격한 이유는 PHP가 캐시를 사용할 때 캐시가 유효한지 확인하지 않기 때문입니다. 따라서 캐시 삭제 후 캐시가 생성되는 시점은 PHP가 캐시를 사용할 때이므로, 캐시 삭제 후 바로 새로운 캐시가 생성되지 않을 수 있습니다.
캐시 삭제 후 캐시가 생성되는 시점을 보장하려면, 캐시 삭제 후 PHP를 재시작하거나, 캐시 삭제 후 캐시를 다시 로드하는 방법을 사용할 수 있습니다.
2025-07-21 12:39