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

1.2.2 Тормоза для зарегистрированных

Тема в разделе "Основные вопросы по XenForo", создана пользователем Jigsaff, 14.10.2013.

Загрузка
  1. Jigsaff

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Всем привет! Появилась странная проблема — если использовать сайт без авторизации, то скорость работы нормальная. Если же залогиниться — начинаются страшные тормоза. Страницы грузятся то по минуте, то по 10-15 секунд (при нормальных 1-2 сек.)

    На форуме, как и на хостинге, никаких действий не производилось. Что могло стать причиной такому?
     
  2. infis

    infis Местный

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

    Это отправная точка для вопросов.
     
  3. Jigsaff

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Я смотрю отладочную информацию, но не могу определить, что именно не так.

    Скорость работы форума не постоянна — работает то в нормальном режиме, то очень долго открывает страницы. При одинаковой нагрузке на железо (по графикам). Пример — перестраивание кеша идет «рывками» — первые 100 пользователей (например) «перестроились» быстро (2-3 секунды), а вторая сотня — минут 5.
     
  4. infis

    infis Местный

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

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Я тоже так подумал и сделал простое действие — оптимизировал ее (иногда такое помогало в аналогичных случаях). Это проблему не решило.

    P.S. Сотрудники хостинга заверили меня, что никаких изменений железа или конфигурации сервера не происходило. Поэтому я подумал на свою базу.
     
  6. infis

    infis Местный

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

    smbbws Местный

    Регистрация:
    28.09.13
    Сообщения:
    152
    Симпатии:
    36
    Версия XF:
    1.1.3
    Ничего удивительного! По залоггированным пользователям ведется отдельная статистика (индивидуальная сессия,какие страницы смотрит, какие новые темы и сообщения просмотрел и т.д.), это лечится только переездом на другой хостинг.
    (если конечно на текущем хостинге,не помогает включение кеширования)
     
  8. Jigsaff

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Кеширование тут без надобности — ресурсов хостинга хватает «с головой». Заметил интересную особенность — при включенном режиме отладки тормоза случались реже. Сейчас и вовсе прекратились. Продолжаю тестирование.
     
  9. infis

    infis Местный

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

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Вчера поймал ошибку (см. аттач) — написал хостеру. Получил в ответ, что проблемы с сервером БД были, но уже все исправлено. И вообще это не влияет на мою проблему. Но после этого тормоза прекратились и больше не наблюдаются.
     

    Вложения:

    • errno11.png
      errno11.png
      Размер файла:
      60,2 КБ
      Просмотров:
      15
  11. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Ну вот скорее всего нестабильно работал сервер базы данных, что проявлялось в плавающим тормозам. После того, как сервер базы данных починили, тормозо, вероятно, уже не будет.
     
  12. Jigsaff

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Опять иногда наблюдается та же ошибка. Похоже, с хостинга надо валить... А рекомендовали, как хороший и надежный.
     
  13. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Что за хостинг?
    --- добавлено : Oct 15, 2013 8:59 AM ---
    И какой тарифный план Вы брали на этом хостинге?
     
    Последнее редактирование модератором: 23.10.2013
  14. Jigsaff

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Fozzy, ТП «Быстрый сайт».
     
  15. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Количество одновременных подключений к MySQL - 50. Технически это ограничивает одновременное выполнение запросов в 50 штук. Образно говоря, если будет порядка 100 пользователей онлайн, плюс шастающие роботы, то этого запросто может не хватить, что приведет к ошибкам доступа к MySQL. Ошибка доступа будет не явная, а в виде большой очереди запросов, что увеличит в разы время загрузки страниц, а также в некоторых случаях вообще приведет к отказу.
    К примеру у меня небольшой онлайн запросто до 30 одновременных соединений к базе на себя забирает. Если будет в два раза больше онлайн, то автоматически увеличится и количество соединение к базе данных. Причем, не факт, что в два раза. Может и раза в три запросто скакануть.

    Потом на этом хостинге ограничено количество писем в 1 час - 100 штук. Запросто можете получить ошибки при отправке оповещений о новых ответах в темах и т.д. Ведь 100 штук в час - это очень мало!

    32 клиента на 1 сервер. В принципе это не так уж и много, но... Ресурсы процессора не безграничны, а потому штук 5 клиентов, которые активно нагружают сервер, и начнутся тормоза. У меня сервер (в облаке) в некоторые моменты времени грузит процессор до 60%. А в среднем выходит около 30% загрузки. Вот и прикиньте, что будет, если таких, как я, будет примерно 5. Все начнут ощущать тормоза, а при еще 25 малопотребляющих и вовсе станет все печально.

    Вообще XenForo плохо себя чувствует на шаредах. При маленьком онлайн все может быть хорошо, но как только начинает расти онлайн, нагрузка резко увеличивается, что приводит к выходу за рамки "дозволенного". Поэтому для нормального форума (не для теста и не для небольшой группы людей) лучше задуматься о выделенном сервере (виртуальном или физическом).
     
    Kei, Jigsaff и adder нравится это.
  16. Jigsaff

    Jigsaff Местный

    Регистрация:
    15.03.13
    Сообщения:
    44
    Симпатии:
    3
    Версия XF:
    1.3.0
    Спасибо за советы. Я планировал дойти до среднего онлайна 50-70 человек и переходить на VDS. По графикам из cPanel ни процессор, ни память (отведенные мне) не используются и на 50%. Поэтому глюки на сайте я списываю на временные трудности хостера. Хотя, если и дальше так пойдет — буду менять хостинг. И скорее всего сразу на VDS типа digitalocean.
     
  17. smbbws

    smbbws Местный

    Регистрация:
    28.09.13
    Сообщения:
    152
    Симпатии:
    36
    Версия XF:
    1.1.3
    Можете так же попробовать intovps.com, на всех тарифных планах выделяется 2 физических ядра,от многоядерного процессора(или процессоров),из минусов данного хостинга - не делают бэкапов(и память распределяется неравномерно,объем полной доступной памяти зависит от других vps есть гарантированный минимум и возможный максимум).
    В сравнении с дигиталокеаном,из плюсов - мощнее ресурсы процессора,из минусов меньше скорость обмена с рейдом жестких дисков.
     
    Jigsaff нравится это.
  18. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Ну давайте сразу определим, что нужно XenForo для счастья на VDS (обычный шаред не берем).
    1) Мощный процессор при онлайн порядка пары сотен будет нагружен процентов на 30-50. При этом основная нагрузка будет исходить из сервера базы данных. Естественно, это при включенном кеше опкода PHP.
    2) Дисковая активность не большая, поэтому заморачиваться хостингом с SSD не обязательно. Нужно будет просто достаточное количество места для размещения самой ОС, движка, аттачей и базы данных. Естественно, не нужно забывать и о создании бэкапов, которые нужно будет копировать на удаленные машины.
    3) Количество памяти - чем больше, тем лучше, так как память влияет на количество выделяемой памяти веб-серверу, php, серверу базы данных. Последний - очень прожорливый. Нормальное функционирование XenForo - от 512 Мб, так как меньший объем памяти сильно ограничит доступную память для сервера базы данных и кешера опкода. При этом память, выделяемая кешеру опкода, будет постоянной и зависит от количества и размера кешируемых php файлов. Самому веб-серверу память нужна постольку-поскольку, но для php необходимо будет выделить достаточное количество.
    4) Пропускная способность сети. Ну не знаю. По идее и 100 Мбит хватит для нормального онлайна за глаза. При очень большом онлайне и большом количестве аттачей скорость сети может стать очень востребованной. Гигабита хватит для очень большого форума. Но тут нужно не забывать, что в случае больших форумов делают кластер, для которого пропускная способность сети уже очень критична.

    Итак, определенно для XenForo необходим гарантированный достаточный объем оперативной памяти, сравнительно мощный гарантированный процессор, от 5 Гб дискового пространства, не менее 100 Мбит пропускной способности сети. Все остальное - по вкусу. В идеале лучше иметь четко выделенные ресурсы, чем плавающие, так как при плавающих ресурсах может в некоторые моменты проседать производительность сервера в целом. Поэтому всегда смотрите на описание ресурсов "от".
     
    Jigsaff и adder нравится это.
  19. Yoskaldyr

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

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    @infis, честно, но совсем верно.
    в голом ксене основная нагрузка только от пхп идет, а база вообще не напрягается.

    дисковая активность будет полностью зависеть от размера форума, установленных хаков и объема памяти на вдс. К тому же чтобы минимализировать эту дисковую активность надо уметь настраивать сервер. Также не слова не сказано насчет наличия свапа на вдс-ке. Поэтому иногда (когда цена критична) имеет смысл взять вдс с 512м и ссд и свапом, чем вдс на обычном диске но с 1гигом и без свапа.
     
  20. infis

    infis Местный

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

    Получается, что все сильно зависит таки от конкретного софта и его настройки. Ну и жалеть деньги на адекватную конфигурацию сервера, обслуживающего нормальный форум, я не стал. Так как не всегда подходит конфигурация VDS, я выбрал сервер в облаке, который сразу имеет достаточный объем оперативной памяти, хорошую дисковую подсистему, мощный процессор. Плата за память постоянна, но вот за процессор и за дисковую активность плачу по факту использования. Поэтому получается недорого.
    --- добавлено : Oct 16, 2013 8:07 AM ---
    И спасибо за комментарий. Действительно, не обращал внимание на дисковую активность, хотя это также может стать критичным. Особенно, если форум является хранилищем большого количества часто просматриваемых вложений.
     
    Последнее редактирование модератором: 24.10.2013
    Kei и Yoskaldyr нравится это.

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