PHP 캐시 시스템 APCu 확장 사용
APCu 확장
APCu 확장은 APC 확장의 업그레이드입니다. APC 확장은 이미 유지되지 않습니다.이 두 세트의 확장은 사실opcodecaching을 기반으로 한다.PHP 자체의opcode가 실현하는 캐시 능력이다.
APCu의 설치는 일반적인 PHP 확장과 마찬가지로 매우 간단하다. 가장 중요한 것은 이 확장이 매우 작다는 것이다.다운로드든 설치든 모두 초급으로 완성할 수 있다.그래서 소규모 프로젝트에 매우 편리하게 응용할 수 있고 PHP 원본이 지원하므로 별도의 포트 같은 설정이 필요 없다.
방법 설명
캐시 시스템은 일반적으로 증가, 삭제, 조회, 자체 증가 등 기능이 APCu 확장에 대응하여 실현된다.
사용 프레젠테이션
apcu_add("int", 1);
apcu_add("string", "I'm String");
apcu_add("arr", [1,2,3]);
class A{
private $apc = 1;
function test(){
echo "s";
}
}
apcu_add("obj", new A);
var_dump(apcu_fetch("int"));
var_dump(apcu_fetch("string"));
var_dump(apcu_fetch("arr"));
var_dump(apcu_fetch("obj"));
정상적인 사용은 비교적 간단하다. 우리는 각종 유형의 데이터를 추가하면 정상적으로 캐시에 저장할 수 있다.그러나 주의해야 할 것은 우리가 직접 대상을 저장하여 APCu 캐시에 넣을 수 있으며, 그것을 서열화하거나 JSON을 문자열로 만들 필요가 없으며, 시스템이 자동으로 서열화할 수 있다는 것이다.apcu_dd(string\key,mixedkey,mixedvar[,intttl=0]) 방법은 일반적인 캐시 추가이고, ttl=0) 방법은 일반적인 캐시 추가입니다. ttl는 기한이 지난 시간도 초 단위로 설정할 수 있습니다. 설정하지 않으면 장기적으로 유효합니다.APCu의 캐시 시한은 한 번의 CLI에서 유효하며, 한 번 더 호출해도 마지막 CLI에서 설정한 캐시 내용을 찾을 수 없습니다.PHP-FPM에서는 PHP-FPM 또는 FastCGI를 재부팅하면 캐시가 비활성화됩니다.
다음은 흔치 않은 몇 가지 방법을 중점적으로 테스트해 봅시다.
apcu_cas("int", 1, 2);
var_dump(apcu_fetch("int"));
// Warning apcu_cas() expects parameter 2 to be int
apcu_cas("string", "I'm String", "I'm New String");
apcu_cas (string $key, int $old, int $new) 는 $old 값을 $new 값으로 수정하는 것입니다. 숫자 형식의 내용만 수정할 수 있습니다. 문자열 수정이면 오류가 발생합니다.이 함수는 어떤 우세가 있습니까?그것의 가장 큰 우세는 원자성, 즉 높은 병발의 영향을 받지 않는 것이다.이와 유사한 것은 apcu_store (string $key,mixed $var [,int $ttl = 0]) 방법이지만, 이 방법은 캐시의 내용을 간단하게 수정할 뿐입니다. 이 캐시의 키가 존재하지 않으면 새로 만듭니다. 형식의 제한을 받지 않고 원자성도 없습니다.
apcu_entry("entry", function($key){
return "This is " . $key;
});
var_dump(apcu_fetch("entry"));
apcu_entry (string $key,callable $generator [, int $ttl = 0]) 이 함수의 역할은 $key가 이 캐시가 존재하지 않으면 $generator라는 익명 함수를 실행하고 $key를 키 값으로 전달한 다음return의 내용을 이 느린 값으로 만드는 것입니다.
var_dump(apcu_cache_info());
마지막으로 현재 시스템의 모든 APCu 캐시 정보를 보고 싶을 때 이 apcu_cache_info () 함수만 있으면 됩니다.총결산
캐시에 데이터가 매우 많을 때, APCUIterator 교체기를 제공하여 우리가 캐시 정보의 순환 조회와 관련 통계를 진행할 수 있도록 한다.한 마디로 하면 이 시스템은 매우 편리한 소규모 캐시 시스템으로 일상적인 개발에서 작은 기능을 충분히 사용할 수 있다.
테스트 코드:
github.com/zhangyue050…
다음은 PHP 캐시 시스템 APCu 확장의 사용에 대한 상세한 내용입니다. PHP 캐시 시스템 APCu 확장에 대한 더 많은 자료는 저희의 다른 관련 글을 주목해 주십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
laravel에 yo에서 angularJs&coffeescript를 사용할 수 있도록 한다.먼저 yo 명령을 사용할 수 있어야하므로 아래에서 설치 global에 설치한 곳에서 laravel의 프로젝트 루트로 이동. 클라이언트 코드를 관리하는 디렉토리를 만들고 이동합니다. 클라이언트 환경 만들기 이것으로 히...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.