Nginx + WordPress + HHVM: Почему не работает Batcache? Поможет ли лак еще больше?


Я много слышал о HHVM, поэтому я настроил копию блога WordPress (на другом домене) с помощью Nginx (с модулем Pagespeed) и HHVM. Прямо сейчас преимущества очевидны: в одной и той же конфигурации время загрузки в два-три раза быстрее.

Я пытаюсь немного ускорить процесс, и я также установил Memcached и Batcache . Я установил пакет memcached, скопировал object-cache.php (Pastebin) в корневую папку блога WordPress, после чего я установил плагин Batcache и скопировал advanced-cache.php ( Pastebin) файл в папку wp-content. Кроме того, я включил строку

define('WP_CACHE', true);

В wp-config.php файл. Хотя, похоже, это не работает. Если я быстро перезагружаю страницу несколько раз, Batcache должен отображать кэшированную страницу, но этого не происходит. Это легко проверить, перезагрузив (Cmd+R в Chrome в OS X) страница несколько раз, а затем просмотр кода страницы. В разделе <head> я должен увидеть некоторые статистические данные batcache, но их там нет.

Интересно, может ли кто-нибудь дать мне какой-нибудь намек на это.

Кстати, я не знаю, могу ли я добавить какой-нибудь другой компонент, чтобы повысить производительность еще больше. Я занимаюсь Лаком, но я не уверен, что это просто бесполезно, и это просто еще один способ сделать то же самое, что я сейчас делаю. Любой другой компонент есть? (Я протестирую CDN для изображений, сокращения js и т. Д. и некоторых других трюков, но я говорю с точки зрения сервера).

Author: fuxia, 2014-08-27

1 answers

Я предполагаю, что ответ заключается в том, что HHVM не работает с типичным кэшированием кода операции, компилятор не такой, как у "обычного" PHP. У HHVM есть собственное кэширование кода операции, которое, насколько я знаю, не интегрируется с APC или OPCACHE Zend, оно делает это самостоятельно. Другими словами, это было бы излишним.

Вы можете прочитать об этом подробно здесь: http://hhvm.com/blog/4061/go-faster (сравнение с APC).

Однако вы можете использовать кэширование HHVM с помощью memcached (по крайней мере, я думаю вы можете) на github HHVM есть несколько проблем и исправлений по этому поводу, https://github.com/facebook/hhvm

Я никогда не использовал HHVM, но должен быть способ проверить или отладить кэш, то есть, вероятно, ваш лучший маршрут, плагины, которые используют преимущества "обычного" PHP, такого как batcache, ничего не покажут.

Чтобы проверить, работает ли он, отключите кэширование HHVM (я думаю, что настройки находятся в разделе параметры времени выполнения) и протестируйте сайт с выключенным/включенным или с другим кэшем настройки.

Другой вариант - просто define('WP_CACHE', true) в вашем wp-config.php файл, и вы можете сравнить HHVM с этим выключенным/включенным и посмотреть, имеет ли это какой-либо эффект.

Здесь вы можете увидеть совместимый список расширений PHP, которые работают с HHVM: https://github.com/facebook/hhvm/tree/master/hphp/runtime/ext

 1
Author: Wyck, 2014-08-31 21:25:50