2010-01-11 3 views
0

일부 캐싱 기능이 필요한 PHP 스크립트를 구현 중입니다.단일 서버의 키 - 값 캐시에 사용할 시스템

스크립트가 단일 서버에서 실행된다고 가정하고 사용자 데이터에 사용할 캐싱 전략을 결정하려고합니다. 아마도 저는 약 50k 개의 다른 키를보고있을 것입니다. 각 키의 데이터는별로 크지 않습니다. 대부분의 경우 5KB 미만입니다.

해시 된 파일의 파일 이름을 결정하기 위해 md5 키를 해시하는 키/값 파일 캐시를 구현했습니다. 그런 다음 한 디렉토리에 너무 많은 파일이있는 것을 방지하기 위해 각 레벨에 256 개의 파일이있는 디렉토리 트리에 저장합니다.

이 설정으로 HD 성능이 병목 현상이되고있는 것처럼 보입니다. memcached를 사용하는 것이 나을 것입니까?

PHP 파일은 이온 큐브로 인코딩되어 있기 때문에 APC 또는 이와 유사한 옵션이 제공되지 않습니다.

답변

1

memcached는 키/값 캐싱에 최적화되어 있으므로 memcached는 정말 좋은 선택입니다. 그렇지 않은 경우 RAM 디스크를 만들어 캐싱 된 파일을 해당 "디스크"에 저장할 수 있습니다.