Как оптимизировать Yii2?

Сейчас страница грузится 0.73-0.88с , отладил все запросы + время вывода шаблона занимает 0.2-0.3 секунды что занимает остальную часть времени не могу понять... посчитал время выполнения всех запросов в Yii::getLogger()->getProfiling() занимает 0.07с
  • Вопрос задан
  • 2172 просмотра
Пригласить эксперта
Ответы на вопрос 6
@melnikov_m
в данном случае, если вы уверены, что БД запросы оптимизированы, а время загрузки вас все равно не устраивает можно еще попробовать вот эти варианты.
1) http-кеш
2) Уйти от использования ActiveDataProvider (если конечно он есть у вас на данной странице) в сторону ArrayDataProvider. В свое время мне это очень помогло, когда нужно было по желанию заказчика выводить по 500 элементов в списке на одной странице. ActiveDataProvider съедал много памяти и времени на создание объктов и доступ его к методам и свойствам. На массивах все стало летать в три раза быстрее...
Ответ написан
qonand
@qonand
Software Engineer
Скорость загрузки страницы зависит не только от того насколько быстро сервер обрабатывает запрос но и от множества других факторов, например от размера загружаемых изображений, размер стилей и скриптов, распознавания DNS записи и т.п.
Вот небольшой обзор моментов которые влияют на скорость загрузки страницы
Ответ написан
mitaichik
@mitaichik
В дополнение к предыдущим ответам: нельзя забывать и про настройку сервера - что там у вас под капотом - nginx + php-fpm такую задрежку не даст, а вот apache + php_mod - вполне может.

Довольно опрометчиво считать время выполнения только по запросам к БД - php тоже может съедать не мало, не самый быстрый язык.

Особенно в контектсе профайлинга, дебаггинга - Yii при этом пишет собирает и пишет огромное кол-во инфы на диск, если вы YII_DEBUG отключите возможно все и залетает.

Тормозить может и из-за XDebug если он у вас по умолчанию включен.

Ну и ненужно забывать что скорости отдачи - понятие не постоянное. И если на вашей виртуалочке на dev-машине она 0.3, то на нормальном сервере она вполне может быть и 0.1
Ответ написан
@Arik
1.
https://github.com/yiisoft/yii2/blob/master/docs/g...

2. XHProf очень хорошо помогает "узкие" места
Ответ написан
@PapaStifflera
Родился, вырос...
Загрузка статики, например. Чем выше значение ping - тем дольше будет грузиться.
Ответ написан
Комментировать
Sanasol
@Sanasol
нельзя просто так взять и загуглить ошибку
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы