Как улучшить производительность приложения на Yii

На производительность Yii веб приложения влияет множество факторов. Сформируем небольшой список факторов (в порядке убывания):

  1. Запросы к базе данных. Чем меньше запросов, join-ов и вообще медленных запросов тем естественно медленней выдача страниц.
  2. Отсуствия акселератора php ( apc, xcache, etc. ) ухудшает производительность в целом.
  3. Отсутствие кэша уровня приложения. Кэширование AR, данных, и результата рендереннга представлений.
  4. Поддержка заголовков E-tag, Last-Modified на уровне приложения значительно ускорит выдачи страниц (за счет ненадобности их загружать).
  5. Множество не скомпилированных асетов ( css, js ) файлов. Желательно сжимать и обьединять асеты в один файл.
  6. Большой размер сессионных данных так же ухудшает производительность.
  7. Устаревшие интерфейсы к веб серверу. Приложение работающее на CGI, mod_apache, FCGI скорее всего будет менее производительным чем на связке nginx+php-fpm, хотя здесь все зависит от конкретных настроек и кода.

Комментарии