Оптимизировать таблицу в Codeigniter - PullRequest
0 голосов
/ 16 января 2020

У меня есть таблица с более чем 7500 строками данных из MySQL - PHP. Приложение построено на Codeigniter 3. Я не с использованием DataTables. Однако каждый раз, когда страница загружается, рендеринг занимает более 15 секунд. Я пытался использовать кэширование страниц, но даже с помощью кнопки «Назад» браузера загружает страницу с нуля.

Методы контроллера:

public function index() {   
    $data['title'] = 'Patient List';
    $data['patient'] = $this->patient_model->get_patients();

    if(isset($_SESSION['patientChanged'])) { 
        if($_SESSION['patientChanged'] == 1) {
            $this->output->delete_cache();
            $this->output->cache(10);
            $_SESSION['patientChanged'] == NULL;
        }
    }

    $this->load->view('templates/header', $data);
    $this->load->view('patient_list');
    $this->load->view('templates/footer');
}

public function insert() {
    $result = $this->patient_model->insert_patient();
    $_SESSION['patientChanged'] = 1;
    redirect ('patient/view/'.$result);
}

Есть ли способ оптимизировать это? Можно ли сократить время загрузки страницы ниже 5 сек c?

1 Ответ

0 голосов
/ 17 января 2020

Добавьте ИНДЕКСЫ в таблицу и разбейте на страницы свой результат с помощью LIMIT & OFFSET. Нумерация страниц вашего результата поможет вам получить ограниченную запись вместо полного списка

...