2012-12-15 1 views
1

정보를 캐시해야 할 때마다 나는 타임 스탬프와 MySQL에 의존하여 데이터를 데이터베이스에 저장하고 그런 식으로 가져 왔습니다. 방금 APC에 대해 읽었습니다.MySQL보다 APC가 더 나은 캐시 옵션입니까?

APC는 너무 쉽지만 APC로 전환하기 위해 이전의 캐시 방법을 변환하는 것이 가치가 있습니까?

+0

무엇이 당신의 질문입니까?코드가 깨끗한 지 아닌지는 기술에 의존하지 않고 코드를 작성하는 작성자에게 달려 있습니다. – hakre

+1

배포 대상 유형을 고려하십시오. 그게 공유 호스팅 서버라면 APC는 일반적으로 잘하지 못할 것입니다. 그렇지 않으면 살펴볼 가치가 있습니다.) –

+0

코드 청소로 인해 Mysql 관련 명령 및 타임 스탬프 검사의 10-20 행이 APC의 1-2 행과 비교되었습니다. – ParoX

답변

1

, 네 질문에 그대로 대답하기. MySQL은 캐시가 아니므로 APC가 더 나아졌습니다.

Mysql은 캐시를 구현하는 저장소 옵션이지만 언급 한 타임 스탬프와 함께 수행하는 논리와 함께 캐시를 구현합니다. APC는 데이터와 코드 모두를위한 완벽한 캐시 구현입니다.

로컬 APC 캐시에 액세스하는 것이 성능면에서 항상 mysql 데이터베이스에 액세스하는 것보다 훨씬 빠릅니다. 키워드가 인 로컬 인 경우 APC는 분산되어 있지 않으므로 캐시를 공유하려면 memcached와 같은 외부 캐시 시스템이 필요합니다.

1

일반적으로 APC는 MySQL보다 훨씬 빠르므로 조사하고 한 시스템에서 다른 시스템으로 전환하는 것이 좋습니다. 그리고 언급했듯이 데이터베이스에 대한 SQL 쿼리가 줄어 듭니다.

더 많은 정보를 구글을 통해 찾을 수 있습니다, 나는 다음과 같은 건너 온 :

http://www.mysqlperformanceblog.com/2006/08/09/cache-performance-comparison/

+0

따라서 2006 Mysql 성능 메트릭에 대한 결정을 내리는 것이 좋습니다. – hakre

+0

@hakre : 아니, 그건 내가 말하는 것이 아니다. 당신은 "일반적으로", "조사하다", "고려하다", "Google"이라는 키워드를 놓친 것 같습니다. – WebStakker

+0

OP가 자신을 위해 google에 접속할 수없고 명시 적으로 이름을 지정해야한다고 말하고 싶습니까? 그런 논쟁은 어디에도 없습니다.) 차이점을 설명하면 다른 사람이하지 않는 것이 분명하고 속도 차이와 이유는 무엇인지 명확하게 알 수 있다면 더 유용했을 것입니다. – hakre

0

데이터베이스를 이미 실행하고 대부분의 작업을 수행하는 경우 성능을 향상시키기위한 첫 번째 단계는 데이터베이스를 성능이 만만치 않은 것으로 조정하는 것입니다. 적절하게 구성된 MySQL은 매우 빠릅니다. 분명히 어느 시점에서는 더 이상 충분히 빠르지 않으며 추가 캐시가 필요합니다. 한 가지 고려해야 할 것은 데이터가 더 이상 일관성이 없을 수도 있다는 점입니다. 당신이 당신의 차 저장소 (데이터베이스)에 데이터를 업데이트 할 수 있음을 의미하지만, 다른 사람들이 stll

지금 당신이 가능한 솔루션으로 APC를 mentoned 한 오래된 캐시 항목을 읽어

    : APC는 두 개의 관련된하지만 다른 것입니다
  • 은 PHP 스크립
  • A에 대한 연산 코드 캐시는 오피 캐시 메모리에 컴파일 PHP 스크립트를 저장함으로써 동작 PHP 사용자 데이터

위한 memorz 공유 캐시. 따라서 사이트를 요청할 때 PHP 인터프리터는 디스크에서 파일을 읽고 코드를 분석 할 필요는 없지만 직접 실행할 수 있습니다. 이것은 큰 도움을주고 항상 좋은 것입니다.

공유 메모리 캐시는 모든 PHP 변수 (몇 가지 예외가 있음)를 가져 와서 시스템의 공유 메모리에 저장하므로 동일한 시스템의 모든 PHP 프로세스에서 읽을 수 있습니다. 따라서 APC에 데이터베이스 쿼리의 결과를 저장하면 공유 메모리에 대한 액세스가 데이터베이스를 쿼리하는 것과 비교할 때 매우 빠릅니다 (쿼리를 다른 시스템으로 보내고 파싱, 실행, 결과 보내기 등) ...)하지만 시작 단계에서 말했듯이 데이터가 오래되었다는 것을 염두에 두어야합니다. 또한 모든 데이터가 메모리에 저장된다는 사실을 기억하십시오. 그래서 avilable RAM의 양에 따라 저장할 수있는 것에 제한이 있습니다. 이것의 또 다른 큰 단점은 데이터가 메모리에만 저장된다는 것입니다. 즉, 시스템이 다운 될 때 캐시가 비게되고 거기에있는 모든 것이 손실됩니다.