CodeIgniter Polska Forum

Witamy na polskiej stronie wsparcia CodeIgniter. Nie zapomnij odwiedzić naszej strony głównej

Nie jesteś zalogowany na forum.

#1 30-07-2017 13:05:22

maxslawek
Użytkownik
Data rejestracji: 28-01-2013
Liczba postów: 112

Pobranie ~30000 rekordów trwa ponad 40s

Witam,
Mam problem z bazą lub z samym CI.

Proste zapytanie do bazy:

$poczatek = $this->input->post('data_poczatkowa');
$koniec = $this->input->post('data_koncowa');
$this->db->where('data >=', $poczatek);
$this->db->where('data <=', $koniec);
return $this->db->get('dziennik')->result_array();

Czas pobrania danych to ok 30-50s. Rozumiem, że jest to ~30-40 tys. rekordów, ale żeby na localhost tyle to trwało? Co może być przyczyną? Wywaliłem inne zapytania - wyczyściłem widok. Samo wygenerowanie tego zapytania tyle trwa.

Wszystko działa na XAMPP`ie 3.2.2

Offline

#2 04-08-2017 23:19:42

cssBlaster21895
Użytkownik
Data rejestracji: 14-06-2013
Liczba postów: 172

Odp: Pobranie ~30000 rekordów trwa ponad 40s

Może to być problem z brakiem linijki w pliku etc/hosts w systemie windows:

127.0.0.1 localhost

albo jeszcze ze sterownikiem bazy danych. Podobno sterownik do mssql w ci ma problemy.

Offline

#3 06-02-2018 22:26:29

renholder
Administrator
Data rejestracji: 06-09-2012
Liczba postów: 848

Odp: Pobranie ~30000 rekordów trwa ponad 40s

Nie pobieraj 40 tys rekordów do pamięci. Zastosuj buforowanie: https://www.codeigniter.com/userguide3/ … ffered_row

Offline

Stopka