Простой Codeigniter Сайт висит (8мин +) - где профиль / тест? - PullRequest
1 голос
/ 08 июня 2011

Мой CI-сайт иногда просто зависает - серверу, кажется, требуется вечность, чтобы ответить на мой запрос, т. Е. Просто при загрузке домашней страницы и других страниц.Это довольно случайно и только иногда.

Я включил профилирование и зашел на домашнюю страницу, вот результат:

enter image description here

Вот дом / index index

function index()
{ 
$this->output->enable_profiler(TRUE);  

$this->benchmark->mark('template_sets_start');
   $this->template->title('Yay, welcome to my site');  
   $this->template->js('home.js,cycle.js');             
$this->benchmark->mark('template_set_end');

$this->benchmark->mark('template_load_start');
   $this->template->load('template/home'); 
$this->benchmark->mark('template_load_end');
}  
}         

Поскольку время, возвращаемое для материала шаблона, невелико, я могу предположить, что в представлениях нигде не наблюдается отставание.

Идеи или предложения?

=== РЕДАКТИРОВАТЬ ===

Одна вещь, которую я нашел, это то, что конфигурация динамически устанавливает base_url.Код ниже, может ли это привести к замедлению?

$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http");
$config['base_url'] .= "://".$_SERVER['HTTP_HOST'];
$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);

1 Ответ

1 голос
/ 01 июля 2011

Время выполнения для «Наборов шаблонов» составляет 0,0000, потому что вы пропустили «s» в названии знака.

Изменение:

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

до

$this->benchmark->mark('template_sets_end');
...