Benchmarking в CodeIgniter


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


URI STRING

/main/category/Differ/270



CLASS/METHOD

main/category



MEMORY USAGE

403,628 bytes



GET DATA

No GET data exists



POST DATA

No POST data exists



DATABASE:  rss3   QUERIES: 2

0.0002
SELECT count(title)as title FROM items,categories  WHERE title!='' and categories.id = items.category and url=«Differ»

0.4508
SELECT title,link_true,link,url,name FROM items,categories  WHERE title!='' and categories.id = items.category and url=«Differ» order by date desc limit 270,30



BENCHMARKS

Loading Time Base Classes 0.0023
Time 0.0025
Controller Execution Time ( Main / Category ) 0.4822
Total Execution Time 0.4847

Очень полезный отчет, позволяет определить бутылочное горлышко в вашем приложении.
Чтобы активировать этот способ

В нашем контроллере добавляем строчку:

1
$this->output->enable_profiler(TRUE);

2. Второй же способ позволяет выбрать определенный параметр, а также применить его не ко всему коду, а только к участку. К примеру, чтобы посчитать время выполнения кода, добавляем эти строчки перед интересующим участком:

1
$this->benchmark->mark('time_start');  // start timing

И в конце интересующего участка:

1
2
$this->benchmark->mark('time_end'); // end timing
echo $this->benchmark->elapsed_time('time_start', 'time_end');

В результате получим просто число — время выполнения участка кода.

Популярность: 1%


Также почитайте эти записи:

Получать новые статьи:

2 комментария

  1. ни фига не понятно,

    как вывести именно статистику запросов к базе? везде только время выполнения.

    добавляю строчку $this->output->enable_profiler (TRUE); в контроллер и ничего не проихсодит.

    опять же куда добавлять? в констракт, в нужный метод???

  2. все, разобрался,

    у меня после вывода контента стоял exit :-) поэтому и ничего не выводилось

Оставить комментарий



Подписка на блог

Подпишись на обновление блога по RSS блога
Число подписчиков: 119

Поиск по сайту

Партнеры

Реклама

Партнеры