Проект «SnakeProject» Михаила КозловаРегистрация

Навигация
⇐CISCO
⇐Voice(Asterisk\Cisco)
⇐Microsoft
⇐Powershell
⇐Python
⇐SQL\T-SQL
⇐FreeBSD and Nix
⇐1С
⇐Общая
⇐WEB Разработка
⇐ORACLE SQL \ JAVA

Codeigniter: benchmarking


CodeIgniter имеет класс Benchmarking, который постоянно активен, рассчитывая временные различия между любыми двумя отмеченными точками.

Использование класса Benchmark
Класс Benchmark может использоваться в ваших контроллерах, отображениях или в моделях. Процесс использования таков:
Обозначить начальную точку mark('Point_Name1')
Обозначить конечную точку   mark('Point_Name2')
Запустить функцию "elapsed time('Point_Name1', 'Point_Name2')", чтобы увидеть результаты 

 Вы можете использовать любые слова, а также устанавливать множество маркеров. Вот пример:

$this->benchmark->mark('dog');

// здесь делаем что-то 

$this->benchmark->mark('cat');

// здесь делаем еще чего-нибудь

$this->benchmark->mark('bird');

echo $this->benchmark->elapsed_time('dog', 'cat');
echo $this->benchmark->elapsed_time('cat', 'bird');
echo $this->benchmark->elapsed_time('dog', 'bird');

Отображение общего времени выполнения
Если вы хотите выводить общее время выполнения с того момента, как запускается CodeIgniter до того момента, как данные отправляются в браузер, просто поместите приведенный ниже код в одно из ваших отображений:

<?php echo $this->benchmark->elapsed_time();?>

Отображение потребления памяти
Если ваш PHP сконфигурирован с --enable-memory-limit, вы можете выводить количество памяти, потребленное целой системой, используя следующий код в отображениях:

<?php echo $this->benchmark->memory_usage();?>

Попробуем изменить наш контроллер из прошлого примера:

<?php
class Blog extends CI_Controller {

        public function index()
        {
            $this->benchmark->mark('p1');
            
            $data['todo_list'] = array('Clean House', 'Call Mom', 'Run Errands');

            $data['title'] = "My Real Title";
            $data['heading'] = "My Real Heading";

            $this->load->view('blogview', $data);
            
            $this->benchmark->mark('p2');
            
            echo $this->benchmark->elapsed_time('p1', 'p2');

И вызовем: http://site/index.php/blog/blog/


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

© Snakeproject.ru создан в 2013 году. При копировании материала с сайта - оставьте ссылку.


Яндекс.Метрика

Goon Каталог сайтов Рейтинг@Mail.ru