Страница 1 из 3

Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-08, 12:55:23
lissyara
скрипт подсчитывает время выполнения php кода и складывает его в БД SQLite
просьба учесть - если в вашем коде есть вызовы внешних скриптов или данные берутся снаружи - время выполнения будет большое (оно и будет записано в БД), а вот затраченное процессорное время - не обязательно будет большим.

Инсталляция.
1. заходите файловым менеджером панели в субдиректорию www вашего аккаунта, нажимаете кнопочку "закачать"
Изображение
выбираете пункт - "URL файла на другом сервере" и вставляете в это поле такое значение:

Код: Выделить всё

http://lissyara.su/patch/2014/2014-01-27/resource.usage.tar.gz
нажимаете "ОК"

2. выделяете закачанный файл, нажимаете кнопку "распаковать"
Изображение

3. соглашаетесь, когда спрашивает подтверждение
Изображение

4. редактируем файл .htaccess (выделяем и нажимаем иконку с карандашиком в панели, или через ssh/ftp - как удобней)
Изображение
выделенный фрагмент - тот который надо изменить - это имя вашего аккаунта. в данном случае - h9357
также, из этой же строки, убираем символ комментария "#" в начале строки
не забываем сохранить по кнопке "ОК"

5. заходим, проверяем работу сайтов, после чего в панели обновялем список файлов. должен появиться файл со статистикой "resource_usage.db"
Изображение

6. перекладываем в корневую директорию любого сайта файл "resource.php" (можно переименовать, если вы параноик =))) и вызываем его в браузере - статистика начинает отображаться сразу же

архив с файлами: http://lissyara.su/patch/2014/2014-01-2 ... age.tar.gz

пример работы: http://lissyara.su/resource.php
протестировано под php 5.2, 5.3, 5.4, 5.5, 5.6

2 Adre выложи скриптец свой для записи нагрузки и инстру

Добавлено: 2011-01-08, 18:40:42
lissyara
собственно скрипты
скрипт подсчитывает время выполнения php кода и складывает его в БД SQLite
просьба учесть - если в вашем коде есть вызовы внешних скриптов или данные берутся снаружи - время выполнения будет большое (оно и будет записано в БД), а вот затраченное процессорное время - не обязательно будет большим.

кладём в директорию www файл с именем .htaccess и таким содержимым

Код: Выделить всё

# file before all php scripts
php_value auto_prepend_file "/home/_ваш_аккаунт_/data/www/get.load.begin.php"
там же кладём файл get.load.begin.php - из архива в предыдущем сообщении

для просмотра статистики, выкладываем в корень любого сайта такой файл с именем resource.php - из того же архива

и вызываем его из браузера

архив с файлами: http://lissyara.su/patch/2014/2014-01-2 ... age.tar.gz

Re: 2 Adre выложи скриптец свой для записи нагрузки и инстру

Добавлено: 2011-01-09, 4:39:57
adre
Хмм... ни понял а где показывается количество запросов бд? и время выполнения запроса в бд? =/ походу еще и объём памати выкинул...
--
Примерно так же реализовал, но кривой пекл нужен для подсчета бд =) и надо еще юзер агента показать, что бы с 0 посещаемостью видели что их боты дрючат, список ботов можно из данного форума выдрать.
Также можно заюзать буферизацию вывода через ob_start в прелоад и аппенд добавить соответственно вывод -получим соответственно еще и размер страницы за минусом изображений - изображения конечно и размер страницы не важны, но заголовками проблем не будет в случае внезапного выскакивания любого текста в вывод пыха.

Re: 2 Adre выложи скриптец свой для записи нагрузки и инстру

Добавлено: 2011-01-09, 11:28:42
lissyara
всё выкинул
тока время выполнения оставил.
========
за БД очень редко кого лочит. я один случай могу тока вспомнить такой.

Re: 2 Adre выложи скриптец свой для записи нагрузки и инстру

Добавлено: 2011-01-09, 14:46:21
adre
Если добавить в php.ini или vhost

Код: Выделить всё

runkit.internal_override  On
И Добавь в преапенд

Код: Выделить всё

runkit_function_copy('mysql_query', '_mysql_query');

runkit_function_redefine('mysql_query', '$query', '
global $_QUERY_LOG;
$t1 = microtime(true);
$res = _mysql_query($query);
$t2 = microtime(true);
$_QUERY_LOG[] = $query ." (@". ($t2 - $t1) * 1000 ." ms)";
return $res;
');

runkit_function_copy('mysqli_query', '_mysqli_query');
runkit_function_redefine('mysqli_query', '$link,$query', '
global $_QUERY_LOG;
$t1 = microtime(true);
$res = _mysqli_query($link,$query);
$t2 = microtime(true);
$_QUERY_LOG[] = $query ." (@". ($t2 - $t1) * 1000 ." ms)";
return $res;
');
И в функцию выхода обработку массива $_QUERY_LOG - получится время и запрос к БД + можно добавить выделяемую память.

Re: 2 Adre выложи скриптец свой для записи нагрузки и инстру

Добавлено: 2011-01-09, 15:42:38
lissyara
добавил. в течение часа будет на серверах

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-13, 2:12:01
Aleks
Вроде все сделал как написано - не работает

Можно в конце выложить окончательный правильный вариант кода и пояснение что куда писать и что куда создавать? :)
Заранее спасибо.
Очень хочется понять что дает нагрузку, чтобы знать куда действовать ;)

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-13, 2:33:40
dipok
Здравствуйте
Помогите разобраться ,пытался загрузить при помощи программы ftp, выдает ошибку (не возможно подключится к серверу )
Какую директорию указывать для загрузки.Первый раз делаю не шарю

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-13, 4:59:52
adre
dipok писал(а):Здравствуйте
Помогите разобраться ,пытался загрузить при помощи программы ftp, выдает ошибку (не возможно подключится к серверу )
Какую директорию указывать для загрузки.Первый раз делаю не шарю
Здравствуйте.

что вы пытались загрузить и куда?

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-13, 8:36:01
lissyara
аккаунты/сервера размещения укажите пожалуйста (без паролей!)
сотрудники вам помогут.

+ шапку я отредактировал - сделал инсталляцию с картинками

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-13, 13:20:50
dipok
adre писал(а):
dipok писал(а):Здравствуйте
Помогите разобраться ,пытался загрузить при помощи программы ftp, выдает ошибку (не возможно подключится к серверу )
Какую директорию указывать для загрузки.Первый раз делаю не шарю
Здравствуйте.

что вы пытались загрузить и куда?

Объясню как смогу программа webside x5 нужно указать директорию для экспорта файлов
Изображение

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-13, 14:11:54
lissyara
lissyara писал(а):аккаунты/сервера размещения укажите пожалуйста (без паролей!)
сотрудники вам помогут.

+ шапку я отредактировал - сделал инсталляцию с картинками
сделайте как на картинках нарисовано.

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-14, 14:11:56
Aleks
Оно-то работает :) только дает один лишь параметр - а понять, что внутри сайта дает нагрузку - нет возможности...

https://srv9.host-food.ru/stat/ - а статистика здесь не работает

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-14, 14:28:37
lissyara
Aleks писал(а):Оно-то работает :) только дает один лишь параметр - а понять, что внутри сайта дает нагрузку - нет возможности...
это же ваш сайт. вы должны знать.
Aleks писал(а):https://srv9.host-food.ru/stat/ - а статистика здесь не работает
работает.

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-21, 19:21:02
SHELA
а как выполнять скрипты которые в папке www, ведь это ж не доменная папка?
Заранее Спасибо

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-21, 23:23:36
lissyara
SHELA писал(а):а как выполнять скрипты которые в папке www, ведь это ж не доменная папка?
Заранее Спасибо
а его не надо выполнять
он просто инклюдиться в начало всех ваших php скриптов
выполнять надо тока файл просмотра - когда смотрите
его на любой домен свой кладёте и всё

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-22, 0:30:55
SHELA
точно, как-то не подумал))
а статистика на srv0.host-food.ru обновляется когда?
у меня за 21 число вроде.

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-01-22, 10:20:25
lissyara
ночью.

Re: Скрипт для определения нагрузки от сайтов

Добавлено: 2011-10-27, 9:33:50
nsemkin
У меня идет превышение процессорного времени, сегодня пришло письмо - больше 2%
Установил статистику
сейчас там
--> 0.538453817367559
--> 0.033956289291382
это время процессора?
два домена

стоит joomla 1.7 около 180 посетителей в сутки
задержка для индексирования роботами 5 с
включил вчера еще акселератор
на сайте включено кэширование, кэш обновляется раз 1 час

неужели 180 посетителей дают такую нагрузку?
на какое же количество посетителей рассчитан тогда тарифный план..

тарифный план эконом
h6267

Скрипт для определения нагрузки от сайтов

Добавлено: 2011-10-27, 9:54:39
lissyara
это процессорное время
--
1. нагрузку в посетителях не считают. хотя бы в хитах, и то это неверно.
2. тарифные планы ни на что не рассчитаны. у них просто есть ограничения.

я могу одним кривым скриптом, одним посетителем, превысить лимиты самого большого тарифного плана.