Снижение потребления ресурсов WordPress

Если кто знает, то одно из отличий версий WordPress 2.3.1-2.3.3 сборки Maxsite.org от оригинальной было то что использовались различные языковые файлы для админчасти блога и самого «лица» блога. Тогда это давало существенный прирост в скорости работы сайта, за счет уменьшения вызовов этих самых строк (более подробно можете почитать в его свежем посте о MaxSite CMS, где снова была затронута эта тема). Как я уже там отметился в коментах – попробовал тоже самое сделать в свежей версии 2.7 (на последней бете) на своем сайте. Результат просто поразительный.  Повторю цитаты из моих коментов по ссылке выше:

если файл локализации (полновесный ru_RU.mo весит 350кб) установлен как обычно, то
MySQL: 45запросов / 0.577 Потребление памяти: 13.3MB
а если его убрать вообще, то
MySQL: 45запросов / 0.550 Потребление памяти: 10.1MB
если подсунуть вместо «полновесного ru_RU.mo» кастрированный файл который «ru_RU_lite» переименовав его в ru_RU.mo то потребление памяти вырастает всего килобайт на 300 вместо трех мегабайт

замена в конфиге строки стандартной

define ('WPLANG', 'ru_RU');

на

if (strpos($_SERVER['REQUEST_URI'], 'wp-admin')) define ('WPLANG', 'ru_RU'); else define ('WPLANG', 'ru_RU_lite');

снизило потребление на главной странице до…7,7мб.

Пересмотрел я все плагины что у меня стоят и для перевода «лицевой» части блога потребовалось лишь скопировать несколько файлов имяплагина-ru_RU.mo в имяплагина-ru_RU_lite.mo, вообще бОльшая часть плагинов ведь переводится только в админ-части, поэтому и у вас получится всего несколько файлов отдельных переводов по 2-30кб.

В итоге получилось (для главной страницы) примерно так MySQL: 45запросов / 0.441 Потребление памяти: 8.6MB

Даже без калькулятора понятно что 8,6мб это существенно меньше оригинальных 13,3мб. Скорость загрузки страниц также повысилась

Испытание на «голом» сайте WP2.7 также показало снижение нагрузки примерно на 3мб и время генерации страницы в среднем на 0,1сек

Возник закономерный вопрос нужно ли в дистрибутив ВП сразу добавить такую опциональную строку конфиг и файлы ru_RU_lite для плагинов, чтобы желающие могли самостоятельно за пару минут путем редактирования конфига снизить потребление ресурсов.

Добавить ли такую опцию для снижения нагрузки в дистрибутив WP2.7 ?

  • Да (97%, 188 голосов)
  • Нет (3%, 6 голосов)

Всего проголосовало: 194

Loading ... Loading ...

P.S. все вышеописанное вы можете применить и к WP 2.5-2.6.3

Скачать «лайт» версии перевода ru_RU_lite.mo для различных версий вы можете по этим ссылкам

2.5.1 | 2.6.3 | 2.7

Связанные записи

156 комментариев

Страницы: « 1 2 3 4 5 6 [7] 8 » Show All

  1. 117 Lecactus 11 февраля 2009 в 18:05 (GMT+6)

    Можно ли ещё как-либо снизить потребление памяти у 2.7 до уровня 2.6.3?

    не в одном потреблении памяти дело. есть еще понятие как скорость работы в целом. именно ее надо сравнивать. у меня лично 2.7 работает быстрее 2.6.* при примерно тех же показателях потребления и вообще этот параметр очень различается для каждого сервера. на одном хостинге при идентичной нагрузке плагинами пишет 10мб на другом 20, на третьем 15. и т.д. это все субъективно


  2. 118 Lecactus 11 февраля 2009 в 18:06 (GMT+6)

    к тому же это потребление не всей памяти круглые сутки, а потребление на текущую страницу в данный момент времени когда она генерировалась.
    + плагины для версий 2.6 и 2.7 отличаются – тот же плагин галереи к примеру по разному “кушает”


  3. 119 Fujik 11 февраля 2009 в 22:34 (GMT+6)

    Чисто визуально что 2.6.3 что 2.7 работают одинаково быстро.
    Просто у меня посещаемость растёт.
    Сейчас пока 250 человек в сутки (на каждом сайте, итого 750-800).
    На 1 человека приходится 8 просмотров.
    Плюс с моего же хостинга скачиваются файлы по 50-100Мб.
    А как читал, говорят, что при посещаемости в 1000 человек WP может начать грузить хостинг :(
    И так как нагрузку на процессор удалось сбить до 0,… то вот интересует теперь оперативная память. На хостинге у меня максимум 32 Мб. Как бы WP не подобрался к этой отметке.


  4. 120 Lecactus 11 февраля 2009 в 22:36 (GMT+6)

    Fujik, не подберется, если не перегрузите плагинами сильно. + суперэкш везде используйте на всякий случай. про 1000 – сказки. реально точно где то от 5-6тысяч стоит задуматься о кэшировании.


  5. 121 Fujik 12 февраля 2009 в 11:44 (GMT+6)

    Спасибо. Значит буду довольствоваться пока тем, что есть :)


  6. 122 Юрий 19 февраля 2009 в 0:56 (GMT+6)

    У меня на хосте РБК:
    Лимиты:
    — процессорное время (мин): 5;
    — Память (Мб): 128;
    — макс. кол-во открытых файлов (шт.): 64;
    — макс. кол-во процессов (шт.): 48;
    — макс. время выполнения web-скрипта (мин):
    8,3.
    — макс. суммарное потребление ресурсов
    процессора2 за прошедшие 7 суток для всего
    хостинга (мин)3: 500.
    — макс. количество файлов4 хостинга: 30000.
    — макс. количество операций ввода/вывода6 за
    прошедшие 7 суток для всего хостинга3: 400000
    — макс. суммарное время выполнения
    длительных запросов5 к БД для всего хостинга
    за сутки (запросов*секунд)3: 50000.
    Значит будет работать и при посещаемости за 1000?


  7. 123 Alexey 9 марта 2009 в 5:35 (GMT+6)

    Чтобы не заморачиваться с переименованием файлов перевода плагинов и тем, но тем не менее использовать "lite" версию перевода сделал буквально все наоборот – переименовал файлы ru_RU в ru_RU_full, а файлы ru_RU_lite в ru_RU, видоизменив строку включения русской локали:
    if (strpos($_SERVER['REQUEST_URI'], ‘wp-admin’)) define (‘WPLANG’, ‘ru_RU_full’); else define (‘WPLANG’, ‘ru_RU’);

    Вроде все работает, проблем не замечено.


  8. 124 kwas 17 марта 2009 в 16:05 (GMT+6)

    Действительно, эффект около 3 Мб. Только с переименованием не понятно. Я просто скопировал lite версию рядом с основной и заменил строку в конфиге. Так и надо делать или будут проблемы с русификацией, которые я пока не заметил?
    Спасибо автору!


  9. 125 Админ газеты КЧ 16 апреля 2009 в 10:33 (GMT+6)

    Привет, Lecactus!
    Поставил плагин WPTuner. Он показывает следующее:
    http://pic.ipicture.ru/uploads/090416/mJOXWSDB9d.jpg

    всё что не вошло в скриншот ниже – всё синим цветом. т.е. нормально.

    меня вот интересуют маркеры Start и get_sidebar
    можно как то снизить время загрузки?


  10. 126 Админ газеты КЧ 17 апреля 2009 в 13:34 (GMT+6)

    ПОЖАЛУЙСТА помогите кто-нибудь :’(
    Сегодня начало всё сильно тупить. Посмотрел через WP Tuner что не так, и увидел что widgets_init грузится больше 20 секунд, а остальные запросы милисекунды.
    Виджетов у меня в теме нету. Что случилось, понять не могу… причём этот widgets_init долго грузится везде куда ни зайди – и в статьях и в админке.

    p.s. пока что сижу на wordpress 2.2.3


  11. 127 Админ газеты КЧ 20 апреля 2009 в 14:24 (GMT+6)

    Заметил, что widgets_init начинает долго грузиться раз в несколько дней, и при этом сайт тупит жоско. Такой глюк как то сам исчезает.
    Не могу понять из-за чего глючит…


  12. 128 Админ газеты КЧ 20 апреля 2009 в 14:28 (GMT+6)

    p.s. перезапуск веб-сервера не даёт результата.


  13. 129 Админ газеты КЧ 20 апреля 2009 в 17:22 (GMT+6)

    Может можно как то отключить в вордпрессе функцию widget_init ?
    Чтобы даже если в каком то плагине и есть возможность использования его в качестве виджета, то чтобы не грузилось потом долго.

    а то вот в файле wp-includes/functions.php выделенное на скриншоте синим цветом
    http://pic.ipicture.ru/uploads/090420/O14NytUUzA.jpg
    удалил.

    В результате в WPTuner строка widget_init совсем исчезла. Но plugin_loaded теперь начало так же долго грузиться как раньше widget_init

    все плагины просмотрел. где есть упоминание о виджетах – отключил. но всё равно не помогло….

    запарился уже :(


  14. 130 Админ газеты КЧ 7 мая 2009 в 17:16 (GMT+6)

    всем спасибо. коменты можно удалить


  15. 131 Andrey K. 10 мая 2009 в 1:09 (GMT+6)

    А в MU 2.7.1 это будет работать или там другая структура?


  16. 132 Lecactus 10 мая 2009 в 6:06 (GMT+6)

    А в MU 2.7.1 это будет работать или там другая структура?

    читаем коммент #27


  17. 133 alexpts 19 июня 2009 в 15:06 (GMT+6)

    К версии wordpress 2.8 будет выпущен файл лайт версии перевода ru_RU_lite.mo?


  18. 134 Lecactus 19 июня 2009 в 15:16 (GMT+6)

    alexpts, он вообще то у меня идет в дистрибутиве 2.8 :-) по крайней мере в последней вчерашней редакции


  19. 135 Alex 19 июля 2009 в 19:19 (GMT+6)

    Чтобы не заморачиваться с переименованием файлов перевода плагинов и тем, но тем не менее использовать “lite” версию перевода сделал буквально все наоборот – переименовал файлы ru_RU в ru_RU_full, а файлы ru_RU_lite в ru_RU, видоизменив строку включения русской локали:
    if (strpos($_SERVER['REQUEST_URI'], 'wp-admin')) define ('WPLANG', 'ru_RU_full'); else define ('WPLANG', 'ru_RU');

    Вроде все работает, проблем не замечено.

    Alexey абсолютно прав! Чтобы избежать проблем с переводом на русский у других плагинов надо делать именно так! например даже на твоем сайте нет перевода Show All для плагина paginated-comments…. потому что не подгружается перевод…. или у всех плагинов надо переименовывать названия файлов paginated-comments-ru_RU.po в paginated-comments-ru_RU_lite.po и т.д. так что удобнее обозвать ru_RU_full и подгружать его в админке!


  20. 136 Lecactus 19 июля 2009 в 19:24 (GMT+6)

    Alex, неправильно вы все поняли. у 99% плагинов переводится только админчасть. тех плагинов где надо перевести “лицевую часть” – единицы


Страницы: « 1 2 3 4 5 6 [7] 8 » Show All

Комментарии не по теме удаляются! Читайте реадми дистрибутива, комментарии выше и FAQ! Прежде чем задавать вопрос, прочитайте это. Научитесь ценить чужое время!

 Имя (обязательно)  EMAIL (обязательно)  АДРЕС ЛИЧНОГО БЛОГА

Вы соглашаетесь с правилами


При добавлении HTML|CSS|JS|PHP кода в комментарий, оформляйте его через кнопку КОД

 

Получать комментарии по RSS