Как-то я упустил в руководстве по созданию блога на yii такой замечательный момент, как финальная настройка приложения. Может потому, что я его и не читал полностью
Так вот. ActiveRecord в своей работе полагается на метаданные получение из БД для определения столбцов таблицы. Но на продакшен сервере нам это не нужно в силу того, что структура базы там меняется ооочень редко, если вообще меняется. И вот для этого в yii есть такой волшебный параметр настройки компонента ‘db’ – как schemaCaching. Он позволяет, на некоторых базах сократить количество запросов в двое, а то и больше.
Вот как им пользоваться:
- Настраиваем компонент ‘cache’.
- Добавляем в настройку БД следующее:
'schemaCachingDuration'=>3600,
Получаем примерно:
'db'=>array( 'connectionString' => 'mysql:host=localhost;dbname=db', 'emulatePrepare' => true, 'username' => 'db_user', 'password' => 'db_password', 'charset' => 'utf8', 'enableProfiling'=>true, 'schemaCachingDuration'=>3600, ),
У меня с 40 запросов сократило до 16, думаю результат говорит сам за себя.



Обо мне