ed44rf Posted November 16, 2016 Share Posted November 16, 2016 гугление не помоглоиспользую visual composer,который дает большую первую загрузку,дальше страница грузится быстровот кусок лога http://imgur.com/a/FzRPqбывает первая загрузка 10 секундвот настройки производительности http://imgur.com/a/NMU5nна серваке 4 ядра и 16гб озукак ускорить первую загрузку? Link to comment Share on other sites More sharing options...
AlexNDR.mac Posted November 19, 2016 Share Posted November 19, 2016 Для начала попробуйте изменить тип кеширования SMARTY на MySQL. Файловое кеширование при больших объемах кеша (кол-во файлов) слишком много теряет на файловых операциях (fopen - fread - fclose) + сортировка... Кеш с APC так же показывает оптимальную производительность по сравнению с другими... Link to comment Share on other sites More sharing options...
ed44rf Posted November 19, 2016 Author Share Posted November 19, 2016 пробовал играться с MySQL для SMARTY, у меня почему то SMARTY медленнее отдает последущие вызовы страницы, примерно 1с для MySQL и 0.3с для файлового кеша насчет APC-у меня пхп7 там уже встроенный opcache Link to comment Share on other sites More sharing options...
AlexNDR.mac Posted November 19, 2016 Share Posted November 19, 2016 Я вообще отключил кеш смарти, он начал странно работать. Производительность при этом почти не пострадала. В добавок я немного оптимизировал кеширование на стороне сервера и поправил некоторые странности в престовских контроллерах, таких как например пересчет в цикле... это ускорило работу. Поиски "тормоза" я бы начал с оценки временных затрат на обращение к сторонним ресурсам (загрузка JS через CDN), потом Timeline (Safari browser) расскажет что так долго заставляет ждать. Как правило, оказывается долго загружается какой-нибудь скрипт аналитики или криво написанный сторонний модуль. А дальше профайлером уже мониторить конкретный компонент и уже, когда таковой найдется, лезть и править. Там могут оказаться довольно серьезные про##ы в архитектуре Но, гляньте для начала какие скрипты подтягиваются извне... и как именно (sync / async) Link to comment Share on other sites More sharing options...
ed44rf Posted November 19, 2016 Author Share Posted November 19, 2016 сайт работает через cloudflare Link to comment Share on other sites More sharing options...
AlexNDR.mac Posted November 19, 2016 Share Posted November 19, 2016 Это все равно не отменяет построение запросов. Затупы в начале - это функции init(), запуск всего зоопарка __construct() в паре с наследованием и валидация кеша. Это затратные операции как по времени, так и по памяти. Отсюда и начинать, почти всегда, почти на всех проектах... Link to comment Share on other sites More sharing options...
ed44rf Posted November 19, 2016 Author Share Posted November 19, 2016 как я понял штатного решения для ускорения первой загрузки страницы нету как вариант это держать все страницы в кеше чтобы сервак не удалял их оттуда есть решение для этого? Link to comment Share on other sites More sharing options...
AlexNDR.mac Posted November 19, 2016 Share Posted November 19, 2016 Тут нужно понять, что именно при первом обращении создает такую задержку. Это могут быть скрипты, которые выполняют кучу второстепенных действий в то время, когда должна грузиться страница, это может быть и рендер с многократными пересчетами CSS и даже модуль "какие-то там очень популярные товары..." который дергает при обращении кучу компонентов и лезет каждый раз в базу данных... Дайте ссылку на сайт, попробую посмотреть. Чтобы уменьшить время загрузки нужно минимизировать (кешировать) сторонние скрипты, разделить CSS и даже частично что-то из правил поместить в начало страницы (посмотрите рекомендации гугла по АМР) и внимательно, крайне внимательно посмотреть на реализацию любых модулей "не из коробки". Еще неплохо бы посмотреть настройки серверной части, может оказаться, что не все работает так как это предполагается... Link to comment Share on other sites More sharing options...
ed44rf Posted November 19, 2016 Author Share Posted November 19, 2016 в первом посте описал возможную проблему использую visual composer,который дает большую первую загрузку Link to comment Share on other sites More sharing options...
AlexNDR.mac Posted November 19, 2016 Share Posted November 19, 2016 Тогда я могу только представить масштабы по оптимизации.... У меня были несколько шаблонов, которые явно были созданы при помощи какого-то "конструктора". О скорости там не приходилось говорить в принципе. Все что можно было сделать при помощи массивов - все было сделано именно так, CSS стили модулей часто дублировали друг друга или переопределяли уже существующие стили.... и главная страница загружалась так медленно, что помогало только полное отключение всех сторонних модулей. К сожалению, готовых решений для такого рода задач - нету. И часто бывает даже так, что проект приходится переделывать, потому, что разбираться в тоннах кода, решающего минималистистические задачи, совсем нет ни времени, ни желания. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now