2012-11-15 1 views
1

나는 여러 SQL 쿼리를 실행 한 후 생성 된 XML을 반환 한 다음 결과 세트를 단일 XML 문자열/문서로 어셈블하는 PHP/mysql 기반 API를 개발 중입니다. .어떤 캐시 전략/기술을 사용하여이 PHP/mysql xml API를 생성해야합니까?

내가 여러 클라이언트 예를 들어,이 API의 다양한 맛을 요청해야합니다

:

http://domain.com/api//playerbio/12345 개인 정보, 현재 연초 통계, 경력 기록, 부상의 목록 등 다양한 섹션으로 플레이어의 전기를 반환을 등

API 요청이 유형은 전반에 걸쳐 지속적으로 콘텐츠를 관리하는 많은 클라이언트 매 시간에 의해 다양한 리그, 팀 명단, 선수 등

통계 학자 및 소스 데이터베이스의 편집자 할 것 일.

현재이 API는 편집자 소스 데이터베이스에서 직접 읽으므로 생성 된 XML 문서가 최신 상태로 유지됩니다.

평균 XML 문서가 어셈블 링을 위해 모든 데이터를 모으기 위해 4-7 개의 쿼리를 요구하기 때문에 소스 데이터베이스가 쿼리되는 횟수를 줄이기위한 캐싱 전략을 구현하려고합니다.

나는이 API가 하루에 300-500k 번 호출되며 XML 문서 크기의 범위가 20k에서 100k에 이르는 전략과 기술을 찾고 있습니다.

APC, memcache, memcached, Redis, MongoDB가 있고 간단한 파일 기반 캐시를 만드는 것도 알고 있지만 비슷한 상황에서 다른 사람들이 사용한 것을 듣고 싶습니다.

답변

0

저는 memcached의 가장 큰 팬입니다. 빠르고 사용하기 쉽고 통합을위한 표준 라이브러리가 있습니다.

memcached는 매우 빠르며 많은 양의 데이터를 처리 할 수 ​​있지만 영구 캐시가 아니므로 실제 캐시이므로 데이터를로드 할 수있는 방법이 필요합니다. 이전 키의 자동 트리밍은 값을 매길 수 없습니다.

0

빠른 데이터 & 영구 데이터를 원하는 경우 Redis가 다른 방법으로 이동합니다. MemcacheD가 지속성을 뺀 대안이 될 수 있지만 응용 프로그램이 단일 서버에서 실행되는 경우 APC가 이상적입니다.

관련 문제