![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 308 Pomógł: 13 Dołączył: 31.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
czy w php jest możliwe coś takiego jak przepełnienie bufora? Nie wiem dokładnie jak to działa, ale w galerii coppermine mamy coś takiego, Cytat // Start output buffering ob_start('cpg_filter_page_html'); z tego co rozumiem cała zawartość strony (kod html) przed wygenerowaniem jest wrzucany do bufora, po zakończeniu zostaje on wysłany do przeglądarki. Już mówię dlaczego pytam... do wczoraj galeria działała dobrze, ale dosyć wolno... dlatego postanowiłem zmodyfikować skrypt tak, że za pomocą funkcji file() pobiera dane z plików css i js po czym wrzuca je w head pliku index.html (mniej zapytań, widać dużą różnice w czasie ładowania strony). Niby działało pięknie, ale dzisiaj wystąpiły problemy w 90% wejść na stronę po 15 sek ładowania serwer zwracał Internal Server Error, w pozostałych 10% zapytanie do serwera trwało około 12 sek (sprawdzałem firebugiem, nie była to wina łącza serwera, a czas wykonywania skryptu). Po wgraniu starych plików problem nie ustąpił... dopiero gdy wyczyściłem plik index.php i wpisałem w nim Kod echo 'a'; odświeżyłem kilka razy i wgrałem oryginalny plik zaczęło działać. Dodam, że plik js i css to około 100 tys kodu. Na myśl przyszło mi coś takiego jak przepełnienie bufora, ale czy coś takiego istnieje? Serwer w loga zwracał przekroczenie czasu wykonywania skryptu, ale nie jest to możliwe z tego względu że czas jest ustawiony na 30 sek, a serwer padał po około 15. Jakieś sugestie bo nie mam pomysłów? Z góry dzięki za pomoc. Ten post edytował sannin 15.09.2009, 04:56:49 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
100 tys. linijek... i próbujesz to przez file() wczytać? Ty zdajesz sobie sprawę, co robi ta funkcja, prawda? To teraz pomyśl, ile dodatkowo roboty musi ona wykonywać, by te oba pliki dzielić na tablicę i ile pamięci się dodatkowo marnuje, by to wszystko w formie tablicy przechować.
-------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 308 Pomógł: 13 Dołączył: 31.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Akurat to nie to, dokładnie to sprawdziłem. Czas wykonania tej funkcji to 0.002 sek
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 01:58 |