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

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

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

Загрузка
  1. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    За глаза такого сервера. Но, если есть вариант с i7, то лучше его, наверное. Из ОС лучше ставить либо Debian, либо CentOS. Винду однозначно нет. Фряху тоже нежелательно, хотя на любителя.
     
    Mike нравится это.
  2. Yoskaldyr

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

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    На той, которую сможете настроить/обслуживать.
    Разве что Вин для пхп веб проектов не сильно рекомендуется (за редким исключением)
     
  3. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    Форум :

    Код:
    Темы:1.177
    Сообщения:8.295
    Пользователи:2.339
    Настройки Xcache :

    Код:
    xcache.admin.enable_auth    Off    Off
    xcache.cacher    On    On
    xcache.coredump_directory    /tmp/phpcore/    /tmp/phpcore/
    xcache.count    12    12
    xcache.coveragedump_directory    /tmp/phpcore    /tmp/phpcore
    xcache.coverager    Off    Off
    xcache.gc_interval    0    0
    xcache.mmap_path    /dev/zero    /dev/zero
    xcache.optimizer    On    On
    xcache.readonly_protection    no value    no value
    xcache.shm_scheme    mmap    mmap
    xcache.size    64M    64M
    xcache.slots    8K    8K
    xcache.stat    On    On
    xcache.test    no value    no value
    xcache.ttl    7200    7200
    xcache.var_count    2    2
    xcache.var_gc_interval    300    300
    xcache.var_maxttl    7200    7200
    xcache.var_size    16M    16M
    xcache.var_slots    1K    1K
    xcache.var_ttl    3600    3600
    Конфиг xenforo :

    Код:
    $config['cache']['cacheSessions'] = true;
     
    $config['cache']['enabled'] = true;
    $config['cache']['frontend'] = 'Core';
    $config['cache']['frontendOptions'] = array(
        'caching'                  => true,
        'automatic_serialization'  => true,
        'lifetime'                  => 3600,
        'cache_id_prefix'          => 'xf_'
    );
     
    $config['cache'] = array(
    'enabled' => true,
    'frontend' => 'Core',
    'frontendOptions' => array(
    'caching' => true,
    'automatic_serialization' => false,
    'cache_id_prefix' => 'xf_',
    'lifetime' => 18000
    ),
    'backend' => 'Xcache',
    'backendOptions' => array(),
    );
    
    Данные дебага :

    Код:
    Время: 0,2562 сек. Память: 11,231 МБ Запросов к БД: 10
    Я так понимаю, не ахти? Что посоветуете ? :)

    Просто накопировал из этой темы разных настроек. Сам ни бум бум. :)
     
  4. maus

    maus Местный

    Регистрация:
    27.03.12
    Сообщения:
    187
    Симпатии:
    129
    Потребление памяти высокое. Похоже, что у вас или дополнений куча, или xcache по какой-то причине не кэширует опкоды. У чистого форума с кэшем опкодов потребление памяти ~2 мб на запрос. Больше сказать ничего не могу.
     
    Mike нравится это.
  5. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    Вот, плагины на момент теста :

    [​IMG]

    Админка хКаши :

    [​IMG]

    Сжатие на вкладке "Производительность" включена то же.
     
  6. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    1. Уменьшите количество потоков для кеша до 4-х или 6-ти. Т.е. поменяйте опцию кешера
    Код:
    xcache.count 4 4
    2. Конфиг ксена некорректный. У Вас дублируются опции, перетирая друг друга. Т.е. их нужно свести к последнему варианту типа:
    Код:
    $config['cache'] = array(
       'enabled' => true,
       'cacheSessions' => true,
       'frontend' => 'Core',
       'frontendOptions' => array(
          'caching' => true,
          'automatic_serialization' => true,
          'cache_id_prefix' => 'xf_',
          'lifetime' => 18000
       ),
       'backend' => 'Xcache',
       'backendOptions' => array(),
    );
    3. Странно, но по картинке (админка xcache) не заметно вообще использование кеша...
     
    Mike нравится это.
  7. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    Сделал конфиг как вы написали :

    Код:
    $config['cache']['cacheSessions'] = true;
     
    $config['cache'] = array(
    'enabled' => true,
    'cacheSessions' => true,
    'frontend' => 'Core',
    'frontendOptions' => array(
    'caching' => true,
    'automatic_serialization' => true,
    'cache_id_prefix' => 'xf_',
    'lifetime' => 18000
    ),
    'backend' => 'Xcache',
    'backendOptions' => array(),
    );
    Данные на сейчас :

    Время: 0,2522 сек. Память: 13,922 МБ Запросов к БД: 15

    Сфоткал админка хкаши после изменений спустя некоторое время :

    [​IMG]

    Ничего не поменялось... Может у хостера спросить чего ? (


    К стати при таком конфиге в XenForo - не залогинивает, после ввода логина и пароля.
     
  8. infis

    infis Местный

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

    При включенном кеше и нормальном его функционировании у Вас раз в 10 бы сократилось время загрузки. А так фактически у Вас работает также, как и без кеша вообще.
     
    Mike нравится это.
  9. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    1. 'cacheSessions' => true, - Когда включаю : false - меня разлогинивает и при авторизации все равно скидывает и невозможно залогиниться.
    2. Да, временно нуль поставил, чтобы разобраться в системе, все настроить, потестить, т.к мне оптом надо брать форумы, не по 1 штуке. Около 15 насчитал навскидку. Они у меня все одной общей тематики разбросаны, чтобы не нагружать 1 базу. Поэтому я к стати создал тему здесь : http://www.xf-russia.ru/forum/threa...-общий-раздел-с-подразделами.4322/#post-37525 - все таки решил перейти на XenForo, удобно все за исключением парочки мелочей. Если к стати сможете помочь - было бы отлично, с этими разделами общими. Советом может или делом, за отдельную плату конечно.

    А может быть такое, что просто сервер нагружен? Если на нем стоят 50 баз от разных сайтов, например?)
     
  10. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    К кешированию в Вашем случае наличие 100500 баз от разных сайтов никак не относится. В общем кеширование у Вас не работает. Причина неизвестна. По поводу подразделов - не ко мне. Я в ближайшее время сильно занят.
     
  11. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    Хорошо, если диагноз в движке форума от нуля, то каким образом это можно подтвердить, пощупать какие-то места проверить и убедиться в этом оконочательно?
     
  12. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Хм. Даже и не знаю, как это можно проверить. Факт в том, что сам XCache у Вас установлен и работает. Также факт в том, что ксен не кешируется (отсутствие в админке сведений о кешировании множества кода ксена).
     
  13. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    Если сейчас возьму лицензию, то каким способом мне лучше установить дистрибутив лицензионной версии на нуль? Просто залить файлы поверх нуля? Может скачать какой-то определенный дистрибутив (читал другие темы на этом форуме, но толком не понял последовательность действий), особенно в моем случае, как лучше провести такой процесс обновления? Чтобы не потерять существующие данные и чтобы точно быть увереным, что Xcache тот же самый теперь точно будет работать у XenForo. :) В том смысле, что этот вариант 100% отпадет, и если хкаша не будет работать, значит 100% дело не в XenForo и можно смело думать над другими способами решения проблемы.
     
  14. Yoskaldyr

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

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    С лицензией это никак не связано - у Вас вообще нормально не работает хкеш (опкод кеш, который кеширует пхп файлы). Судя по статистике не закеширован ни один php файл - почему так - я не подскажу.
     
  15. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    К кому можно обратиться, компетентному в этом вопросе, пусть за отдельную плату, не подскажете ?

    И еще к стати, если включать memcashed - тоже не работает ничего. :) Ошибок никаких нет, просто не меняется данные скорости загрузки страницы.
     
  16. maus

    maus Местный

    Регистрация:
    27.03.12
    Сообщения:
    187
    Симпатии:
    129
    А можно полностью вывод phpinfo?
     
  17. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    Отписал в личные сообщения. :) Там длинный файл.
     
  18. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Что странно, у него таки есть что-то в кеше. Но сильно мало...
     
  19. maus

    maus Местный

    Регистрация:
    27.03.12
    Сообщения:
    187
    Симпатии:
    129
    Вижу, там php-fcgi. Что там за fcgi-сервер? Похоже, проблема в нем - он не держит php в памяти все время, а потому xcache каждый раз запускается заново с чистым кэшем. Если это php-fastcgi, нужно, чтобы переменная окружения PHP_FCGI_CHILDREN была больше 1.
     
    infis и Mike нравится это.
  20. Mike

    Mike Местный

    Регистрация:
    30.11.11
    Сообщения:
    149
    Симпатии:
    3
    Версия XF:
    1.1.0 Final
    Если честно, я не знаю. Мне поставили на fastvps.ru по умолчанию как есть все. Подскажите, путь до файла, который нужно отредактировать, пожалуйста?
     

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