최근에 내 쿼리를 더 빨리 실행할 수있는 방법이 있는지 질문했습니다 (주제 : Slow postgresql queries in Zend). 나는 20-30 %의 향상을 가져 오는 '설명'검색어를 없앴습니다. 하지만 여전히 내 쿼리가 너무 느립니다.Zend의 느린 Postgres 쿼리
class Application_Model_DbTable_Images extends Zend_Db_Table_Abstract
{
protected $_name = 'images';
public function getImage($id)
{
$row = $this->fetchRow("id = $id");
return $row;
}
}
나는 내 응용 프로그램을 프로파일 링하고 단일 getImage() 호출이 약 300ms 지속된다는 것을 알았습니다. 그러나 두 번 호출하면 두 번째 호출은 약 15ms 지속됩니다. 모든 쿼리를 빠르게 실행하려면 어떻게해야합니까?
저는 더 이상 설명이없는 쿼리를 100 % 확신합니다. 데이터베이스 쿼리 로그를 확인한 결과 모든 쿼리가 완벽 해 보였습니다.
아니요 - 서버가 디스크 내용을 캐싱하므로 디스크의 해당 부분을 다시 읽으려고하면 이미 RAM에 있습니다. –
1. 그 캐시 파일은 각각 약 5kB에 불과합니다. file_get_contents()는 시간이 없어 (~ 1ms) 그들을 처리합니다. 2. 한 행에 2KB 미만의 데이터가 있습니다. 4. 'images'테이블에는 ~ 3000 개의 행이 있습니다. 나는 pgadmin에서 zend에 의해 생성 된 쿼리를 실행했고 ~ 15ms가 걸렸습니다. 새 컨트롤러가 시작될 때마다 새 연결이 초기화 될 수 있습니다. 어떻게 이런 일이 일어나지 않도록합니까? – jacek11
그래서 ... 어떤 아이디어? – jacek11