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

А потом удивляются, почему медленно работает форум

Тема в разделе "Оптимизация XenForo", создана пользователем infis, 16.12.2011.

Загрузка
  1. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Попался на глаза на офе некоторый код. А именно: http://xenforo.com/community/threads/add-more-video-sites-bb-code-media.7608/page-16#post-302395
    Честно говоря, я уже просто не вытерпел и отписал прямо туда же: http://xenforo.com/community/threads/add-more-video-sites-bb-code-media.7608/page-16#post-302783
    Там на английском, вот то же на русском:
    Я не погорячился?
     
  2. Yoskaldyr

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

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    Нет. И этого даже мало.

    P.S. Иногда просто хочется исключить руки у подобных программистов чтобы не делали подобного...
     
  3. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Что показательно. Мой пост на офе был полностью проигнорирован... :)
     
  4. Yoskaldyr

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

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    посмотрел более детально скрин профилирования. Это абсолютно нормальная универсальная реализация, да вызывает strtr много раз, но только потому что юзается при генерации линков. Если будет какая-то нативная либа для работы с утф, то по идее это должно значительно разгрузить движок...
     
  5. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Я и не спорю, что без нее нельзя обойтись, а также то, что она достаточно быстрая. Естественно, когда есть шаблоны, то и парсер присутствует в той или иной мере. Но по сравнению с прочим кодом львиная доля приходится как раз на строчные операции типа str_replace и strstr. Все мы знаем, что при увеличении кода, который будет задействовать большие объемы операций со строковыми переменными, это быстро приведет к деградации. При операции вставки видео, когда происходит загрузка и парсинг страницы, а затем формируется конечный код, расходуется значительный объем памяти. Теперь представим, что на достаточно загруженном ресурсе одновременно десяток человек производит как раз операцию вставки видео. Резко увеличивается объем потребляемой памяти и ухудшается отзывчивость веб-сервера. До каких пределов? Зависит от разных параметров. Но не суть.
    Если взять несколько таких замечательных модов, поставить на достаточно слабенький сервер, дать средний онлайн пользователей, то получим тормоза. И при этом виноват будет не движок форума, а именно такой вот веселый набор модов!
    Лично я как раз против такого писательства и возражаю.
    Кстати, профилирование показало, что и на PHP можно писать хороший код. Там многие функции вызываются один или буквально пара-тройка раз. Т.е. достаточно продуманно сделана общая функциональность и работа плагинов. По максимуму используется однократное создание объектов и их использование. Соответственно, и на базе это положительно сказывается. В общем, мне понравилось :)
     

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