2010-08-09 3 views
0

Mongrel에서 내 로그를 보는 과정에서 최적화하고 싶은 일부 SQL 문을 발견했습니다. 다음으로 보면서, 나는이 항목 때때로 : 예컨대, 그들의 앞에 캐시를 가지고 것으로 나타났습니다Mongrel CACHE 로그 항목 (특히 SQL 문에 대한 CACHE 항목)

CACHE (0.0ms) SELECT * FROM `customers` WHERE (`customers`.`id` = 35) 

실행 시간을 감안할 때, 내가 있으리라 믿고있어 잡종 정말이 데이터를 캐싱한다. 내 질문은 어떻게 구성입니까? 나는 모델 데이터의 캐싱에 관해서 많은 온라인을 찾을 수 없었다. 내가 읽은 대부분의 정적 페이지 또는 페이지 조각 캐싱과 관련이있다. 나는이 캐싱을 가능하게하기 위해 명시 적으로 아무 것도하지 않았으므로, 실제로 구성 방법과 작동 방식에 대한 포인터를 찾고 있습니다. 미리 감사드립니다!

답변

1

실제로 잡글과는 관계가 없습니다. Rails는 기본적으로 모든 컨트롤러 동작을 중심으로 ActiveRecord::Base.cache을 수행합니다. 즉, 해당 작업의 범위에서 쿼리 결과를 캐시하고 데이터베이스에 다시 도달하는 대신 캐시에서 결과를 제공합니다. 결과가 저장되는 원래 조회 인 CACHE가 접두어가 아닌 동일한 조회가 동일한 조치 내에서 로그에서 더 높게 표시되어야합니다.

약간 자세한 내용 here.

+0

이것이 내가 원하는 것입니다. 감사! –