2011-06-14 2 views
1

PHP에서는 모든 호출에서 제공된 매개 변수와 비교를 수행해야하는 원격 API를 작성하고 있습니다. 제공된 매개 변수는 API의 내부 상태에 따라 1에서 50까지의 동적 값 (길이가 각각 약 15 바이트) 정도를 검사해야합니다.디스크 IO와 PHP의 MySQL 쿼리

제 질문은 가능한 한 빨리 전화를 걸기 위해 각 호출에서 플랫 파일 (심지어는 .inc. 심지어는 즉시 분석 할 수도 있음)의 비교 값을로드하는 것이 합리적입니다 , 또는 각 호출에서 MySQL 테이블의 비교 값을로드하십시오. 이 값에 대한 변경 사항을 작성하는 비용은 그다지 자주 발생하지 않으므로 중요하지 않습니다.

감사합니다.

답변

1

50 개 항목 만있는 경우 PHP 코드에 포함하십시오. 당신은 이미 디스크에서 그 파일을 읽는 중입니다 ... 그리고 PHP는 자신의 바이트 코드 캐싱을 가지고 있습니다. mysql을 사용하려면 매번 소켓을 열고 네트워크 요청을해야한다.

+0

이것은 나의 첫 번째 직감이었고 이제는 PHP의 고유 한 바이트 코드 캐싱에 대해 알게되었습니다. – Derg

1

값이 최대 50 개인 경우 데이터베이스에서로드 한 다음 메모리에 캐시합니다.

+0

요청을 가로 질러 캐시를 어떻게 유지합니까? –

+0

나는 그가 mysql 쿼리 캐시에 대해 이야기하고 있다고 가정한다. – iHaveacomputer

+0

mysql 쿼리 캐시에 대해 이야기하지 않습니다. 나는 PHP를 모른다. 가능하지 않으면 로컬 memcached 또는 redis 인스턴스와 함께 캐시하십시오. –