@vanyproduction

Как сделать Wordpress очень быстрым?

Здравствуйте.
Занимаюсь full-stack сайтами (от дизайна до разработки, ни на что не претендую) на ВП.
Делаю сайты изменяемыми для клиентов (не просто записи, а прям вообще все, контакты, описания, блоки разные - востребовано и платят).
И не нравится мне то, что по идее концепция подразумевает сам факт наличия динамического php кода в коде страницы. Но результатом является то, что обычная html страница грузится 0.3 сек, а на вп - порядка 1-2 при прочих равных.
Можно ли как-то настроить вп на то, чтобы все страницы с динамическим кодом сохранялись в статику и подгружалась уже она?
Ведь Битрикс (который композитный) как-то же работает, а скорость там мне очень нравится :) но я понимаю, что тем не менее там динамика. Как? Куда копать?)
===
Я сейчас говорю только за "первое посещение сайта". Кэш - это круто и давно работает и без всяких "композитных сайтов" за 4000$.
===
Я может неправильно выразился. Мне очень нравится, когда я на своем ужасном мобильном интернете могу зайти на страницу за 0.4 секунды, там начинает сразу отображаться какой-то контент. Да, там потом картинки подгружаются, это мелочи. Весь прикол в том, что когда идет запрос от браузера - сервер отдает файл, а не выполняет жуткий запрос генерации страницы из php хуков wordpress'a.
  • Вопрос задан
  • 8614 просмотров
Пригласить эксперта
Ответы на вопрос 12
@eskrano
копать в штакетник и немного в сжатие исходного кода, а если глубже то, выбросить вордпресс к чертям .
Ответ написан
copist
@copist
Empower people to give
1. Установить nginx + php-fpm
2. Настроить в nginx выдачу всех страниц, которые генерятся в PHP через файлы
habrahabr.ru/post/124684
не кэшировать, если пользователь авторизовался или оставил комментарий через внутреннюю систему комментариев. Если комменты через Disquss, то с ними сам Disquss разберётся.
3. Подключить плагины к Wordpress, которые работают с memcached.
навскидку: Supercacher и W3 Total Cache
4. Настроить сборку всех JS и CSS в кучу, сжатие и выдачу в минифицированном виде.
Ответ написан
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
Я уже раньше отвечал по поводу оптимизации VPS под быструю работу именно WP. Можете порыться в моих старых ответах. Но там все конечно в общих чертах. Сейчас как раз готовлю серию статей по этому поводу - от сетапа системы и пакетов, до оптимизации самого WP и кастомного кода. В принципе, могу достаточно детально проинструктировать, но писать тут сейчас такой объем лень :) Если хотите - стукните в личку (см. профиль).

Если кратко:

На shared хостинге разве что плагины кеширования, disk cache и тд. Чтобы добиться максимума, нужно:

VPS
нормально настроенная система, особенно дисковые и сетевые операции, включая tcp congestion control и прочие няшные твики
Nginx, можно с fastcgi_cache, для хардкора есть модуль для прямой работы с memcached
HHVM c фоллбеком на PHP-FPM (с opcache)
Memcached / Redis
MariaDB
WordPress
плагин/класс объектного кеширования на уровне WP
минификация и конкатенация скриптов и стилей
оптимизация изображений
грамотный код (в том числе использование объектного кеша, transients / wp_cache)
грамотное использование функционала ядра WP и архитектурные решения
и еще огромная тележка мелких нюансов

зы: такой хардкор касается не только WP но и любой другой платформы, если надо "быстро"
ззы: а еще уже вышел HTTP/2 модуль под Nginx, сейчас как раз тестирую. Шустрая штука (кстати, снимает небольшую часть задач перечисленных выше)
Ответ написан
HoHsi
@HoHsi
* memcached
* правильная настройка nginx. В том числе кешировать на стороне пользователя не только статику, скажем на 3 секунды.
Ответ написан
@Emike
Бизнес, СДЛы, писанина, йога, счастье )
Я расскажу свой опыт.
Интернет-магазин на Woocommerce из 400 товаров.
В 2014 покупал (на деньги клиента) платную топовую версию плагина WeboSpeedup + настройку у них заказывал. В сумме вышло по 20 000р. Можно и самому настроить, если разбираться. Плагин даёт здоровенную кучу настроек.

А в 2015 году они же выпустили облачный сервис кэширования Айри.рф. К нему подключились.
Вроде шустро всё.

Расходы 2500 в месяц. Я 3 сайта подключил и с каждого по 1000р. беру.
По деньгам - там для вебмастеров есть возможность взять с 50% скидкой тариф для 10 сайтов. 2500 в месяц.
Оговорюсь. Я не профессионал в технической части. Поэтому в ньюансах не разбираюсь. Было бы здорово найти какое-то решение, чтобы без заморочек и без регулярных платежей. Чтобы поставил и получил ракету )
Ответ написан
Комментировать
Piocan-Alex
@Piocan-Alex
Прокачался до рейдера и дредноута в EVE
Иван Украинцев: Тогда у меня есть для вас решение WP Super Cache, лучший из бесплатных плагинов. Если у вас VPS хостин то он закеширует все, если виртуальный то сможет закешировать в основном только сам движок wp, так на таком хостинге нет доступа к настройкам сервера.

То есть мы грузим например главную и 24 часа у нас в кеше она будет хранится в готовом, скомпилированом виде, в случае обновления страницы в браузере или при заходе другого пользователя она просто высылается клиенту, без перерасчетов. Это лучший из бесплатных плагинов по кешированию, создан на основе платного собрата.

https://ru.wordpress.org/plugins/wp-super-cache/

Хорошая статья на хабре habrahabr.ru/company/regru/blog/263781 , я сам установил некоторые плагины, Super Cache понравился больше всех

Согласно статистике из статьи с Wp Rocket скорость загрузки страниц у меня упадет до 0.2-0.6 сек, но мне не верится))
Ответ написан
sptm
@sptm
software developer / DevOps engineer
Как уже многие до меня высказались -- действительно, есть плагины для кэширования, тот же W3 Total Cache очень хорош. Но ко всему этому я бы посоветовал Varnish, эдакий реверс-прокси с кэшированием, заточенный под HTTP.
Ответ написан
Комментировать
kalbac
@kalbac
Wordpress Developer Full-Stack
Иван Украинцев в сети куча статей о том как ускорить работу сайта на WP. Неужели не нашли не одного? Относительно недавно читал статью на хабе об оптимизации, к сожалению нету этой ссылки под рукой что бы поделиться с вами. Расскажу "в двух словах". Сжимаете все картинки, сжимаете все css и javascript файлы, опускаете загрузку скриптов в самый низ документа (в том числе и jQuery). И отключаете несколько функций ядра WP, которые не нужны, как минимум на фронтэнде.
Ответ написан
@deleted-webter
О себе вот тут такой рассказ. Бит среди терабайтов
Мне очень нравится, когда я на своем ужасном мобильном интернете могу зайти на страницу за 0.4 секунды, там начинает сразу отображаться какой-то контент. Да, там потом картинки подгружаются, это мелочи. Весь прикол в том, что когда идет запрос от браузера - сервер отдает файл, а не выполняет жуткий запрос генерации страницы из php хуков wordpress'a.

А причём тут пхп к генерации страницы на клиенте?)
На пхп это решается кэшем, а на клиенте полным отключением JS , минимумом всякой х-ни в виде переливающихся кнопочек на css. и загрузкой изображений после хтмл, это делается либо в css либо в html5
Ответ написан
Комментировать
SV0L0Ch
@SV0L0Ch
Разработчик специализируюсь на Bitrix и Wordpress
Почитайте вот эту статью и комментарии habrahabr.ru/post/264033 как раз по вашему вопросу
Ответ написан
Комментировать
dimasmagadan
@dimasmagadan
>чтобы все страницы с динамическим кодом сохранялись в статику и подгружалась уже она
поставьте плагин кэширования.
будет переводить все в статику и подгружать ее.

дальше копать в сторону оптимизации сервера/плагинов/шаблона. в интернете на эту тему огромное количество информации. одним комментарием не охватить.

разбейте задачу на более мелкие, задавайте вопросы конкретно по этим мелким задачам
Ответ написан
Комментировать
djalin
@djalin
У меня
MySQL: 13 Запитів, час генерації: 0.293 секунд. Пам’ять: 11.65 MB

кешируются только запросы к бд
EM Object Cache
- если кешировать всю страницу целиком - скорость будет еще больше. ну от сервера зависит конешно.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы