Ваш IP адрес: 18.220.163.91
Сегодня: 17.05.2024
14:24

Скрипты, шаблоны, софт для популярных CMS. Программы для PC

Приветствуем, дорогой пользователь на сайте scripts-for-you.ru! Здесь ты найдешь множество скриптов, шаблонов, хаков, движков для популяных CMS: Ucoz, DLE, Joomla, Wordpress.

Авторизация

Рекомендуем хостинг

Круглосуточная поддержка от HOSTiQ.ua

Счетчики


Онлайн всего: 1
Гостей: 1
Пользователей: 0


Вывод информации о нагрузке блога на WordPress

АвторАвтор: Marques | ДатаДата: 13.11.2010, 20:27 | Раздел: Информация для Wordpress


Примечание: здесь и в прочих статьях каталога файлов писал не я, просто мне в лом менять третье лицо)
В последнее время меня стали спрашивать о том, как я вывожу в футере информацию о нагрузке блога при генерации страницы. Я имею ввиду число запросов к MySQL базе, время генерации страницы и число затраченной на это памяти. В основном, конечно, спрашивают о памяти, так как код показа числа запросов и времени генерации встроен в дефолтный шаблон WordPress, хоть по умолчанию и закомментирован. Сразу скажу, что память считается функцией memory_get_usage и я понятия не имею, как именно она работает. Скажем, не секрет, что последние версии WordPress даже при выделенных 32Мб памяти частенько не хотят работать, а поэтому число, выводимое функцией memory_get_usage ставит меня в тупик: во-первых, на локальном сервере функция выводит число потребляемой памяти раза в 4 большее, чем на хостинге и, во-вторых, в любом случае это число меньше 32Мб, без которых WordPress по сути работать не хочет. Вероятно, использование функции зависит от каких-то настроек сервера, но все мои поиски информации об этом не принесли никакого результата. Но, тем не менее, выводимое число потребляемой памяти можно использовать, как абстрактную величину: скажем, можно оценить насколько вырастает потребление памяти при включении какого-то плагина или генерация каких страниц блога у вас затрачивает наибольшее количество памяти.

Откройте файл functions.php вашего шаблона и добавьте туда код:

function usage() {
printf(('%d / %s'), get_num_queries(), timer_stop(0, 3));
if ( function_exists('memory_get_usage') ) echo ' / '
. round(memory_get_usage()/1024/1024, 2) . 'mb ';
}
add_action('admin_footer_text', 'usage');

После этого в админке вашего блога в футере автоматически появится информация о количестве запросов к базе, времени генерации страницы и числе затраченной памяти. Если вы хотите, чтобы данная информация автоматически добавлялась и в футер самого блога, то вам нужно добавить в файл functions.php еще одну строчку:

add_action('wp_footer', 'usage');

Только убедитесь, что в файле footer.php вашего шаблона есть вызов функции wp_footer(), без нее автоматическое добавление работать не будет. Но я бы вам посоветовал вручную вставить нужный код в файл footer.php - тем самым вы можете управлять тем, как будет выглядеть эта информация в футере. Для этого добавьте туда что-то типа:

<small> usage(); ?></small>

Если вы не хотите, чтобы данная информация показывалась всем посетителям блога, то вам надо изменить код на:

 if (current_user_can('level_10')){ ?>
<small> usage();?></small> } ?>

И теперь только авторизированные администраторы блога смогут увидеть информацию о нагрузке на блог.

В процессе тестирования потребляемой блогом памяти я перепробовал все четыре найденных мной плагина с подобной функциональностью. Все они используют для подсчета потребляемой памяти функцию memory_get_usage и выдаваемые этими плагинами значения практически не отличаются друг от друга. Все та же непонятная разница в цифрах на локальном сервере и у хостера. Исходя из этого никакой нужды в использовании плагинов в данном случае нет - если 2 строчки кода делают тоже самое, что и большие плагины, то какой в них смысл? Красивая полоска-индикатор потребляемой памяти ничем не лучше вывода текстового значения.

Я все же надеюсь, что найдется кто-нибудь, кто сможет мне объяснить, как именно работает функция memory_get_usage и сколько в действительности потребляет памяти блог на WordPress.


Добавить страницу в закладки:

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Всего комментариев: 1
Комментарий № 1
Имя: Гость

0  
Сообщениe № 1 Написал: Гость (22.12.2011)

почему бы и нет :)
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]