pecl install memcache
설치가 완료되면 PHP 구성 파일 (php.ini)에서 Memcache 확장을 활성화해야합니다. php.ini 파일을 열고 다음 코드를 추가하십시오.
extension=memcache.so
그런 다음 웹 서버를 다시 시작하여 구성이 적용되도록하십시오.
$memcache = new Memcache;
$memcache->connect('127.0.0.1', 11211);
여기서 '127.0.0.1' 은 Memcache 서버의 IP 주소 이고 11211은 Memcache 기본 포트 번호입니다. 필요에 따라 실제 서버 주소와 포트로 수정하십시오.
캐시 데이터 :
$data = '캐시 데이터';
$key = 'cache_key';
$expiration = 3600; // 캐시 만료 시간,초 단위
$memcache->set($key, $data, 0, $expiration);
이 예에서는 String 'Cache Data'를 키 이름 'Cache_key' 의 캐시에 저장하고 만료 시간을 3600 초 (즉, 1 시간)로 설정합니다.
캐시 된 데이터 가져 오기 :
$key = 'cache_key';
$data = $memcache->get($key);
if ($data === false) {
// 데이터가 존재하지 않습니다,데이터를 재생하고 캐시에 저장하십시오
$data = generate_data();
$memcache->set($key, $data, 0, $expiration);
}
캐시 된 데이터가 존재하는 경우 직접 얻으십시오. 존재하지 않으면 데이터를 재생하고 캐시하십시오.
캐시 된 데이터 삭제 :
$key = 'cache_key';
$memcache->delete($key);
키 이름을 지정하면 캐시에서 지정된 데이터를 삭제할 수 있습니다.
압축 데이터 :
$data = '많은 양의 데이터';
$key = 'cache_key';
$expiration = 3600;
$memcache->set($key, gzcompress($data), MEMCACHE_COMPRESSED, $expiration);
GZCompress 기능을 사용하면 스토리지의 데이터를 압축하여 데이터가 전송 될 때 네트워크 부담을 줄일 수 있습니다.
CAS (체크 및 세트) 작업을 사용하십시오.
$key = 'cache_key';
$cas = 0;
$data = $memcache->get($key, null, $cas);
// 데이터 수정
$data['field'] = '새로운 가치';
// 비교함으로써$cas값,지휘하다CAS작동하다
$memcache->cas($cas, $key, $data, 0, $expiration);
CAS 운영은 캐시 된 데이터를 동시에 수정할 때 레이스 조건을 피하여 데이터 일관성을 보장하는 데 도움이됩니다.