Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wydajność, include podstron
k00sl
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 20.04.2009

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


Witam, mam pewne pytanie odnośnie wydajności, a mianowicie która z metod jest bardziej wydajna:

a.) includowanie podstron do jednego pliku index.php

przykład:
index.php?action=podstrona1
index.php?action=podstrona2
index.php?action=podstrona3

b.) include do każdego pliku z osobna

przykład:
podstrona1.php
podstrona2.php
podstrona3.php

Metoda "a" wydaje się być bardziej wydajna ponieważ wszystkie funkcje są od razu zaimplementowane i nie są za każdym razem przeładowywane, jednak całe obciążenie przechodzi na jeden plik, nie jak w przypadku metody "b".

Nie jestem w tym za bardzo zorientowany. Jakie macie zdanie na ten temat? Proszę o jaką kolwiek odpowiedz. (IMG:style_emoticons/default/smile.gif)

Ten post edytował k00sl 11.04.2010, 10:08:22
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
tehaha
post
Post #2





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


jak dla mnie niepisaną zasadą jest wybieranie rozwiązania prostszego, drugie rozwiązanie jest bez sensu no bo co jak tych stron będzie 80? co do obciążenia trudno mi powiedzieć bo to by trzeba było jakiś testy zrobić, ale pierwsza metoda wydaje mi się pod każdym względem lepsza, no chyba że robisz maksymalnie prostą stronkę z 3 podstronami
Go to the top of the page
+Quote Post
k00sl
post
Post #3





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 20.04.2009

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


no tak, ale nie lepiej rozłożyć sobie stronę na parę plików? Powiedzmy te najbardziej obciążone podstrony, jakiś chat.. etc.
Go to the top of the page
+Quote Post
tehaha
post
Post #4





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


no strony rozkłada się na kilka plików dla zwiększenia wydajności i własnej wygody, ten kod który się dużo razy powtarza dajesz do pliku inkludowanego, np. header, footer, najczęściej używane funkcje, wydaje mi się że trochę źle to rozumujesz to że posiekasz duży plik na 5 kawałków to nie znaczy że 5 razy zmniejszysz obciążenie, w ręcz przeciwnie otwieranie i pobieranie treści z 5 plików będzie raczej mniej wydajne niż pobranie takiej samej ilości kodu z jednego pliku
Go to the top of the page
+Quote Post
k00sl
post
Post #5





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 20.04.2009

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


źle mnie zrozumiałeś, ja się nie pytam o dzielenie pliku na porcję i includowanie headerów, footerów etc. Chodzi mi oto, aby stworzyć powiedzmy drugi taki sam index.php, lecz pod inną nazwą. Tak, aby nie był przetwarzany cały czas jeden plik przez serwer.
Go to the top of the page
+Quote Post
tehaha
post
Post #6





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


czyli np. jak masz stronę czatu to byś miał 2 identyczne strony chat.php i chat2.php i użytkownicy są dzieleni, że połowa używa pierwszego a reszta drugiego pliku tak? to by raczej nie zmniejszyło obciążenia bo i tak obciążenie wynika z połączeń do bazy danych, w każdym razie i tak wydaje mi się że źle kombinujesz, zwiększenie wydajności serwisu uzyskuje się np. przez cachewanie niektórych stron, albo wykorzystanie kilku baz danych. Samo rozdzielanie użytkowników na różne pliki nie przyniesie efektu bo to połączenia do bazy danych są głównym obciążeniem.
Go to the top of the page
+Quote Post
Pilsener
post
Post #7





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Wszystkie żądania powinny być przetwarzane przez jeden plik (najczęściej index.php) a fragmenty kodu potrzebne do ich obsługi powinny być includowane, optymalne rozwiązanie to jedna klasa/funkcja = jeden plik i oczywiście includowanie tylko tego kodu, który jest niezbędny (poczytaj o nowoczesnych klasach autoload i popatrz jak to robią frameworki czy duże aplikacje). Jeśli chcesz odciążyć serwer to musisz przekierować żądania na inny a w ogóle najlepiej postawić dedykowane serwery do obsługi plików, bazy oraz php (każdy wymaga nieco innej konfiguracji), dublowanie parsera w ramach jednego serwera tylko obniży wydajność, 1k stron po 100 żądań/s na jednym hostingu będzie mniej wydajne niż jedna strona obsługująca 1k*100 żądań.
Go to the top of the page
+Quote Post
AndyPSV
post
Post #8





Grupa: Zarejestrowani
Postów: 393
Pomógł: 5
Dołączył: 6.02.2003
Skąd: The.Luciferian.Doctrine.p
df

Ostrzeżenie: (30%)
XX---


oprzyj to o jeden plik index.php glowny, tak jak kolega powiedzial
rozwiazanie 1sze to jedyne sluszne rozwiazanie, jest najbardziej wydajne
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: 3.10.2025 - 11:53