Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: include, require i Wydajność?
Forum PHP.pl > Forum > PHP
Omega
W którymś z tematów zauważyłem uwagę na temat spadku wydajności wraz ze wzrostem ilość dołączanych plików. Właściwie to nabrałem trochę wątpliwości co tak naprawdę stanowi problem... Czy ktoś jest w stanie powiedzieć coś konkretnego na ten temat? Trzeba się starać upchać kod w jak najmniejszej ilości plików? Martwię się bo jestem zwolennikiem możliwie jak najczytelniejszego podziału.

Interesują mnie jakieś bardziej potwierdzone testy itp. nie własne przemyślenia.
pink
Cytat(Omega @ 2.09.2007, 15:42:56 ) *
W którymś z tematów zauważyłem uwagę na temat spadku wydajności wraz ze wzrostem ilość dołączanych plików. Właściwie to nabrałem trochę wątpliwości co tak naprawdę stanowi problem... Czy ktoś jest w stanie powiedzieć coś konkretnego na ten temat? Trzeba się starać upchać kod w jak najmniejszej ilości plików? Martwię się bo jestem zwolennikiem możliwie jak najczytelniejszego podziału.

Interesują mnie jakieś bardziej potwierdzone testy itp. nie własne przemyślenia.


Problem stanowią operację IO (odczyt pliku z dysku) wykonywane podczas każdego include - pomocny może być jakiś akcelerator do php, np eaccelerator.
Pakowanie sporej iości kodu do jednego pliku nie ma sensu, taki kod jest trudny do debugowania, nie można stowosać na nim autoloaderów ani unittest'ów
IMO lepiej jednak każdą klasę w osobnym pliku.
starach
Jakieś 2-3 tygodnie temu interesowałem się tym tematem i przetestowałem include, include_once, require i require_once.
Testy przeprowadziłem na 6 plikach. W 1 było to samo co 5 pozostałych.
Mówiąc najprościej podział był taki: pełen_dzbanek.php i jedna_piąta_dzbanka.php * 5
Testy wykazały że najszybciej wczytuje funkcja include(),
mimo iż ponoć różni się od require() tylko typem generowanego błędu w przypadku niepowodzenia.
Oprócz tego dowiedziałem się że z jednego pliku dane wczytują się znacznie szybciej niż kilku oddzielnych.
Nie powinno to dziwić bo jak wspomniał pink problem stanowią operacje odczytu danych z dysku.
Jednak również jak wspomniał pink lepiej jest porcjować dane i nie zwracać specjalnej uwagi na ten mankament.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.