Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Duży plik z kodem
cim
post
Post #1





Grupa: Zarejestrowani
Postów: 208
Pomógł: 28
Dołączył: 9.08.2004
Skąd: Stargard

Ostrzeżenie: (0%)
-----


Witam,

czy dla działania (w sensie wydajnościowym) ma znaczenie czy kod znajduje się w jednym dużym pliku (przykładowo 400 KB czystego PHP), czy np. w dwóch lub większej liczbie mniejszych plików? Macie jakąś wiedzę na ten temat/wskazówki? Nie bardzo mam możliwość podzielenia tego pliku na kilka mniejszych i zrobienie testów wydajnościowych obu wariantów, stąd pytanie do Was.

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Im wiekszy plik tym gorzej. Oczywiscie do pewnej rozsądnej granicy nie ma to znaczenia, ale 400kb kodu na jeden plik to chyba lekka przesada....
Go to the top of the page
+Quote Post
Anonimowo
post
Post #3





Grupa: Zarejestrowani
Postów: 1
Pomógł: 1
Dołączył: 15.07.2013

Ostrzeżenie: (0%)
-----


Według zasady SOC, czyli podziału odpowiedzialności, jeden plik musi zawierać jedną klasą która robi jedną rzecz, jednakże tworzy się bootstrap'y które kolekcjonują wiele plików i łączą w jeden aby zminimalizować I/O.
Go to the top of the page
+Quote Post
cim
post
Post #4





Grupa: Zarejestrowani
Postów: 208
Pomógł: 28
Dołączył: 9.08.2004
Skąd: Stargard

Ostrzeżenie: (0%)
-----


Witam,

dzięki za odpowiedzi, w takim razie trzeba będzie to przerobić, jak będzie chwila oddechu.

Pozdrawiam
Go to the top of the page
+Quote Post
toffiak
post
Post #5





Grupa: Zarejestrowani
Postów: 395
Pomógł: 80
Dołączył: 24.08.2009

Ostrzeżenie: (0%)
-----


Sam testów nigdy nie robiłem ale dawno temu gdy pracowałem na Symfony 1.4 była tam możliwość utworzenia jednego pliku ze wszystkich plików dla Doctrine ( https://doctrine.readthedocs.org/en/latest/...erformance.html ). Działało to szybciej niż gdy gdy pliki nie były ze sobą połączone, różnica nie była duża kilkanaście procent dla całego projektu. Projekt wykorzystywał jednak więcej pamięci niż poprzednio.

W symfony 2.x pliki frameworka także są łączone ze sobą w jeden duży plik.
Go to the top of the page
+Quote Post
adbacz
post
Post #6





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

Ostrzeżenie: (0%)
-----


Jeśli jest to plik, w którym ponad 85% klas (jeśli mówimy tu o obiektówce) albo kodu ogólnie jest używanego zawsze, to pozostaw to jednym pliku. Szybciej dla PHP jest załadowanie jednego większego pliku niż 50 mniejszych, z taką samą zawartością.

Lecz jeśli kod zawarty w tym pliku nie jest w pełni wykorzystywany za każdym razem gdy ładujesz te plik, to lepiej podzielić go na mniejsze.

Z doświadczenia wiem, że ładowanie klas do jednego pliku Cache, które sa używane zawsze zmniejsza czas wykonywania skryptów od kilkunastu do kilkudziesięciu procent nawet. Ale trzeba to robić z głową.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 20:45