1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

Ускоряем XenForo: включаем кэширование

Тема в разделе "Советы, руководства и видео-уроки", создана пользователем FractalizeR, 12.10.2010.

Загрузка
  1. 1981

    1981 Местный

    Регистрация:
    15.10.11
    Сообщения:
    273
    Симпатии:
    19
    Версия XF:
    1.1.4
    парни если установить 1.10 бету2, нужно включать кэширование? или все через админку?
     
  2. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Кэширование не включается через админку.
     
  3. vkams

    vkams Местный

    Регистрация:
    08.07.11
    Сообщения:
    132
    Симпатии:
    28
    Рома, а на мой вопрос:
    ?
     
  4. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Выбирать по идее тот, который установлен на сервере.

    Гугл знает все ;) Первая попавшаяся ссылка из поиска:
    http://blog.peter.am/index.php/2010/11/15/php-apc-memcache-sessions
     
  5. vkams

    vkams Местный

    Регистрация:
    08.07.11
    Сообщения:
    132
    Симпатии:
    28
    Ага, полез я к хостеру (nic.ru) с вопросом. На 10-м уровне настроек обнаружился apc. Я полез его на радостях включать - и получил предупреждение: "Включаемый Вами модуль apc конфликтует с модулем zend optimizer. В целях обеспечения корректной работы модуля apc все конфликтующие модули будут исключены из конфигурации. " Теперь бы понять: кажется, xenforo использует этот zend optimizer... или я ошибаюсь? Но если использует, то что предпочесть?
     
  6. Yoskaldyr

    Yoskaldyr Пользователь

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    XenForo использует Zend Framework - это набор пхп-библиотек для удобства разработки приложений (набор пхп файлов)
    А Zend Optimizer - это расширение пхп, немного оптимизирующая выполнение любых пхп файлов и позволяющая запускать пхп-приложения закодированные Zend Encoder-ом.
     
    vkams и SeM13 нравится это.
  7. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Попробуйте XCache, если сможете его поставить или использовать на nic.ru. Если сравнивать zend и apc, то вроде как apc пошустрее будет.
     
  8. vkams

    vkams Местный

    Регистрация:
    08.07.11
    Сообщения:
    132
    Симпатии:
    28
    infis и Yoskaldyr, спасибо за совет.
    Простите не совсем чайника, но... не выше кофейника - как это измерить? Я только что включил APC кэширование и хочу понять, что изменилось.
     
  9. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Включите режим отладки в libraru/config.php (нужно добавить $config['debug'] = true;). Внизу страницы начнут отображаться данные по времени выполнения и количеству запросов.
    1. Ну и просто несколько раз откройте/перегрузите какую-нибудь страницу (достаточно будет главной форума или портала). Посмотрите, сколько времени потребовало на первое открытие и обновления.
    2. Теперь то же самое, но при выключенном кешировании.
    3. Сравните результаты.

    Также можно посмотреть в админке APC некоторые цифры по количеству попаданий в кеш и т.д.
     
    vkams и Yoskaldyr нравится это.
  10. FractalizeR

    FractalizeR XenForo Addicted

    Регистрация:
    27.09.10
    Сообщения:
    1 085
    Симпатии:
    832
    Версия XF:
    1.3.2
    Выбрать надо тот вариант, на котором написано memcached большими буквами. А первый блок кода одинаковый для всех кеширующих движков.

    А у вас memcached вообще установлен? Кто его ставил? Спросите у него, на каком порту он висит. Надеюсь, файерволом закрыли...

    Укажите там неверные настройки и вы не сможете открыть ни одной страницы. Остановите memcached и будет тоже самое. В админке такие вещи указывать нельзя.
     
    Yoskaldyr нравится это.
  11. 1981

    1981 Местный

    Регистрация:
    15.10.11
    Сообщения:
    273
    Симпатии:
    19
    Версия XF:
    1.1.4
    парни так что стоит включить кэширование? (если да то делать как в первом посте?
     
  12. FractalizeR

    FractalizeR XenForo Addicted

    Регистрация:
    27.09.10
    Сообщения:
    1 085
    Симпатии:
    832
    Версия XF:
    1.3.2
    У вас форум притормаживает ощутимо? Если да - стоит. Если нет - какой смысл?
     
  13. vkams

    vkams Местный

    Регистрация:
    08.07.11
    Сообщения:
    132
    Симпатии:
    28
    Сегодня мне хостер включил nginx, я проверял настройки PHP 5.2.10 - и обнаружил, что включены модули apc и eaccelerator. Может быть, кто-то из них лишний, скорее мешает, чем помогает? Посоветуйте, пожалуйста.
     
  14. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Ничего страшного, что два модуля одновременно присутствуют. По производительности, вероятно, шустрее будет eaccelerator, но это чисто по слухам. Также по слухам eaccelerator глючный (с тем же Zend, а он используется XenForo).
    Если не хочется наступать на грабли, выберите APC. С ним меньше всего вероятность возникновения проблем. Тем более, что он официально поддерживается разработчиками PHP.
     
  15. vkams

    vkams Местный

    Регистрация:
    08.07.11
    Сообщения:
    132
    Симпатии:
    28
    Спасибо, временно отключил eaccelerator, буду экспериментировать. Пока что посещаемость форума мала, так что разницу будет непросто заметить. Заметил, что страницы генерируются за 0.05-0.3 с, а вот грузятся и рендерятся в браузере в несколько раз дольше. Временно отключил кнопки соц. сетей, а то ещё дольше приходилось ждать окончания загрузки. Странно, компьютер очень быстрый, интернет тоже. Форум на phpBB2 и IPB были шустрее. Может быть, можно что-то ещё разогнать?
     
  16. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Длительная загрузка может происходить по причине подгрузки данных с других ресурсов. Например, часть скриптов грузится из внешних источников, какие-то картинки могут также загружаться со сторонних ресурсов. Обратите внимание, что отображается в статусной строке браузера - увидите не мало соединений с другими ресурсами. Кнопки соц. сетей также загружаются не с вашего ресурса, а с этих самых соц.сетей. Так что ничего странного, что приходиться подолгу ждать окончания загрузки страницы. Реально сама страница загружается быстро, но на странице находятся различные элементы и скрипты, подгружающие данные со сторонних ресурсов (те же счетчики тоже грузятся со сторонних ресурсов). В ксеновских такого "г..." много, потому субъективно phpBB, IPB и другие могут быть быстрее - на них просто могут не использоваться сторонние ресурсы. Естественно, от скорости самого компьютера тут уже ничего не зависит. Может зависеть от провайдера и вообще качества интернета.

    А вообще, господа! Я тоже заметил, что уж очень много лишнего подгружается с внешних ресурсов. При этом у меня некоторые ресурсы даже резолвятся долго, что ощутимо сказывается на общем времени загрузки страницы. Есть рекомендации по оптимизации? У меня и этот форум работает субъективно шустро, но окончательная загрузка очень длительная.

    Прикладываю профилирование загрузки страницы. Из списка новых сообщений открываю новую тему с одним сообщением. Результат достаточно печальный - общее время загрузки 31 секунда!
     

    Вложения:

    • profiler.png
      profiler.png
      Размер файла:
      435,9 КБ
      Просмотров:
      96
  17. Yoskaldyr

    Yoskaldyr Пользователь

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    единственный вариант - полностью отказаться от сторонних кнопок и сервисов.
    А если сделать чтобы общее время загрузки не менялось, но казалось что страница подгрузилась раньше, то надо менять/править почти все js скрипты и грузить их асинхронно, но не думаю что это кому-то нужно, потому что это придется делать при каждом обновлении форума и обновлении стороннего скрипта.
     
  18. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Можно попробовать сократить количество внешних скрипов за счет фейсбука и твитера, убрав их с сайта, кому они не нужны. Лично у меня пользователей оттуда и туда не будет. Также, как и авторизация фейсбука мне и даром не нужна.
    Ну и еще вариант - часть скриптов грузить с себя, а не с внешнего cdn. Это сделать можно в некоторых случаях. Единственное, нужно отслеживать их изменение, если оно имеет место быть.
    И на этом все. Больше придумать уже врядли что-то получится, к сожалению.

    P.S. Я уже помоему говорил, что социализация - это зло... А тут оно воочию, как говорится.
     
  19. vkams

    vkams Местный

    Регистрация:
    08.07.11
    Сообщения:
    132
    Симпатии:
    28
    infis, а что за профайлер Вы используете?
    Я уж и забыл, как в 1990-х запускал TurboProfiler для программ на С.
    Нашёл в Хроме некие "Инструменты разработчика". Пока не овладел, но вот любопытный аудит затрат на загрузку главной страницы и темы, может быть, кому-то будет интересно.
    затраты.gif затраты2.gif

    PS Странно: картинки размытые, хотя я заливал чёткие гифы. Добавлю ещё архив с ними, а то не разглядеть.
     

    Вложения:

  20. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Который в FireBug. Там во вкладке сеть можно видеть запросы, ответы и процесс загрузки.
     

Поделиться этой страницей