CodeIgniter - Benchmarking

Definindo pontos de referência

Se você deseja medir o tempo necessário para executar um conjunto de linhas ou uso de memória, você pode calculá-lo usando pontos de benchmarking no CodeIgniter. Existe um “Benchmarking”Classe para este propósito no CodeIgniter.

Esta classe é carregada automaticamente; você não precisa carregá-lo. Ele pode ser usado em qualquer lugar em suas classes de controlador, visualização e modelo. Tudo que você precisa fazer é marcar um ponto inicial e um ponto final e, em seguida, executar oelapsed_time() entre esses dois pontos marcados e você pode obter o tempo que levou para executar o código conforme mostrado abaixo.

<?php 
   $this->benchmark->mark('code_start');
  
   // Some code happens here  

   $this->benchmark->mark('code_end');
  
   echo $this->benchmark->elapsed_time('code_start', 'code_end'); 
?>

Para exibir o uso de memória, use a função memory_usage() conforme mostrado no código a seguir.

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

Exemplo

Crie um controlador chamado Profiler_controller.php e salve em application/controller/Profiler_controller.php

<?php 
   class Profiler_controller extends CI_Controller {
  
      public function index() {
	
         //enable profiler
         $this->output->enable_profiler(TRUE); 
         $this->load->view('test'); 
      } 
  
      public function disable() {
	
         //disable profiler 
         $this->output->enable_profiler(FALSE); 
         $this->load->view('test'); 
      }
		
   } 
?>

Crie um arquivo de visualização chamado test.php e salve em application/views/test.php

<!DOCTYPE html> 
<html lang = "en">
 
   <head> 
      <meta charset = "utf-8"> 
      <title>CodeIgniter View Example</title> 
   </head>
	
   <body> 
      CodeIgniter View Example 
   </body>
	
</html>

Altere o arquivo routes.php em application/config/routes.php para adicionar rota para o controlador acima e adicionar a seguinte linha no final do arquivo.

$route['profiler'] = "Profiler_controller"; 
$route['profiler/disable'] = "Profiler_controller/disable"

Depois disso, você pode digitar a seguinte URL na barra de endereço do seu navegador para executar o exemplo.

http://yoursite.com/index.php/profiler

A URL acima habilitará o criador de perfil e produzirá uma saída conforme mostrado na captura de tela a seguir.

Para desativar a criação de perfil, execute o seguinte URL.

http://yoursite.com/index.php/profiler/disable