>  기사  >  백엔드 개발  >  PHP 메모리 캐시 구현 방법_php 팁

PHP 메모리 캐시 구현 방법_php 팁

WBOY
WBOY원래의
2016-05-16 20:25:00852검색

이 글의 예시에서는 PHP 메모리 캐시 구현 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.

PHP에서의 캐싱은 메모리 캐시, 파일 캐시, 페이지 캐시 등 여러 종류로 나누어집니다. 이번 글에서는 PHP에서 메모리 캐싱을 하는 몇 가지 방법에 대해 이야기해보겠습니다. 여기서는 Memcached 캐시와 PHP에서 제공하는 APC 캐싱 방법을 소개하겠습니다.

1.Memcached 캐시.

Memcached는 고성능 분산 메모리 캐시 서버로, 데이터베이스 쿼리 결과를 캐시하고 데이터베이스 액세스 횟수를 줄여 동적 웹 애플리케이션의 속도를 향상시킵니다. "Key=>Value" 방식을 사용하여 데이터를 정리합니다. 이는 호스트의 여러 사용자가 동시에 이 캐시 시스템에 액세스할 수 있도록 하며 일반적으로 대규모 웹사이트에 사용됩니다. Memcached는 데이터를 캐시하기 위해 메모리를 사용하므로 서버가 다시 시작되거나 memcached 프로세스가 종료되면 휘발성이 있습니다. 데이터가 손실되므로 memcached를 사용하여 데이터를 유지할 수 없습니다.

php_memcache를 사용해 본 사람이라면 누구나 PHP 메모리 캐싱이 매우 복잡하다고 생각할 것입니다. 실제로 memcached는 주로 WEB 동적 애플리케이션을 가속화하는 데 사용되는 효율적이고 빠른 분산 메모리 개체 캐싱 시스템입니다.

WIN32에서의 memcached 구성 및 사용 방법을 소개합니다.

1. PHP 메모리 캐시 구성, WIN32 환경

1. php_memcache.rar 다운로드

압축된 패키지 압축 풀기: php_memcache.rar

php_memcache.rar 압축 패키지에 포함된 주요 파일은 다음과 같습니다.

/memcached-1.2.1-win32/memcached.exe

/php_memcache/php_memcache.dll

2. 명령 프롬프트를 열고 memcached.exe가 있는 경로를 가리킨 다음 memcached.exe -d start를 실행합니다.

3. php_memcache.dll 파일을 PHP의 동적 파일 라이브러리 폴더에 복사합니다.

4. php.ini 파일에 Extension=php_memcache.dll 줄을 추가합니다.

5. Apache를 다시 시작한 후 phpinfo를 확인하세요. memcache가 있으면 설치가 성공한 것입니다!

예를 들어 코드는 다음과 같습니다.


코드 복사 코드는 다음과 같습니다.
//memcached 클래스 파일 포함
require_once('memcached-client.php')

//옵션 설정
$옵션 = 배열(
'servers' => array('www.jb51.net:11211'),//memcached 서비스의 주소 및 포트
'debug' => true,//디버그를 켤지 여부
'compress_threshold' => 10240, //데이터가 바이트 수를 초과할 때 압축
'persistant' => false//영구 연결 사용 여부
);

//memcached 개체 인스턴스화
$memcached = 새로운 memcached($options)

$sql = 'SELECT * FROM table1'; $키 = md5($sql)

//memcached에 캐시된 데이터가 없으면 캐시된 데이터를 memcached에 씁니다
if(!($datas = $memcached->get($key)))
{
$conn = mysql_connect('localhost', 'hxsd', '123456')
mysql_select_db('hxsd')
$결과 = mysql_query($sql)
while($row = mysql_fetch_object($result))
{
$datas[] = $행
}
//다음 접속 시 사용할 수 있도록 데이터베이스에서 얻은 결과 세트 데이터를 memcached에 저장합니다.
$memcached->add($key, $datas)
}
그렇지 않으면
{
//memcached $datas에 캐시된 데이터를 직접 사용
}
?>

메모리 캐시 2, APC, EC, Zend 가속기 비교
1.APC

APC, 전체 이름은 Alternative PHP Cache, 공식 번역은 "Optional PHP Cache", 홈페이지는 http://pecl.php.net/package/apc, PHP 도움말 매뉴얼 페이지: http:/ /cn.php.net/apc

APC는 설치 당일부터 백그라운드에서 PHP 애플리케이션을 자동으로 제공합니다.

또한 APC는 특정 메모리 캐시 기능을 제공할 수 있지만, 이 기능은 완벽하지 않습니다. APC 캐시 쓰기 기능을 자주 사용하면 예상치 못한 오류가 발생할 수 있다는 보고가 있습니다. apc_fetch, apc_store 및 apc 캐시와 관련된 기타 여러 기능을 살펴보세요.

설치 코드는 다음과 같습니다.

코드 복사코드는 다음과 같습니다.# pecl install APC
구성:/etc/php.inc, 코드는 다음과 같습니다.


코드 복사 코드는 다음과 같습니다.extension=apc.so
[apc]


코드 복사 코드는 다음과 같습니다.
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 30
apc.optimization = 0
apc.ttl = 7200
apc.user_ttl = 7200
apc.num_files_hint = 1000
apc.mmap_file_mask = /tmp/apc.XXXXXX

이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.