Итак, я столкнулся с проблемой, которую я, вероятно, должен иметь только на больших страницах, но вместо этого я получаю это на ЛЮБОЙ странице.
Я пытаюсь создать REST API с помощью CodeIgniter, и он работает, но на любой странице, которую янагрузка очень и очень медленная.Я говорю о загрузке страницы в 20-30 секунд для страницы размером 504 байта.
Я добавил дополнительные тесты, и он показывает, что загрузка данных занимает примерно 0,04 секунды.
Rankings.php(Контроллер)
class Rankings extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('rankingsmodel');
}
/**
* Index Page for this controller.
*/
public function index()
{
$this->benchmark->mark('code_start');
$rankings =$this->rankingsmodel->getAllRankings();
$mappedRankings = array_map(array($this, 'mapRank'), $rankings, array_keys($rankings));
$this->benchmark->mark('code_end');
echo $this->benchmark->elapsed_time('code_start', 'code_end');
return $this->jsonIFy($mappedRankings);
}
public function mapRank($ranking, $k)
{
$ranking['rank'] = $k;
return $ranking;
}
public function jsonIFy(array $data = array())
{
echo json_encode($data);
}
}
И моя рейтинговая модель
class RankingsModel extends CI_Model
{
public function __construct()
{
parent::__construct();
}
public function getAllRankings()
{
$this->benchmark->mark('code_start2');
$query =$this->db->query('SELECT * FROM characters3 WHERE gm < 3 ORDER BY rebirths DESC')->result_array();
$this->benchmark->mark('code_end2');
echo $this->benchmark->elapsed_time('code_start2', 'code_end2');
return $query;
}
}
Я абсолютно не понимаю, почему страница загружается так невероятно медленно, в то время как мои тесты говорят, что для ее загрузки потребуется 0,03 / 0,04.Я пытался настроить xdebug, но мне не повезло, что он был настроен.Я использую обычные драйверы mysqli, которые поставляются с codeigniter.
Кто-нибудь знает, почему он такой медленный или какой-либо инструмент, который я могу легко настроить для отладки?
Спасибо