ďťż

Długi czas przeładowywania strony

       

Podstrony


telcocafe

czy Długi czas przeładowywania strony może być spowodowany tym że na stronie często łącze się i rozłączam z bazą mysql nawet 5 razy??



Tak. Jak jesteś ciekaw, czy na 100% to wina ciągłego łączenia z bazą, połącz się na początku przez mysql_pconnect(), a nie mysql_connect() (lub analogiczną dla innych rodzajów sterowników bazy).

w skrypcie powinieneś tylko raz łączyć się z bazą danych.

Pamiętaj, że to może być zależne również od prędkości łącz (twoich i servera), stopnia użycia procesora i sprawności przeglądarki (chodzi o samo wczytanie strony) itp. Bo czasem po prostu przeglądarka długo przetwarza kod strony do wyświetlenia...



próbuje przerobić strone na to mysql_pconnect() ale na niekturch podstronach to nie działa każda podstrona ładowana jest przez include nie wiem czemu to tak jest??
w indexie mam taki kod:
mysql_pconnect($host_b,$login_b,$pass_b); mysql_select_db($baza_b);
i jak robie przez include każdą strone to powinno działć to połączenie na każdej stronie??

zwykłe połączenie też będzie działać, nie musisz używać połączeń trwałych. Połączenie będzie trwało do mysql_close() lub końca skryptu

przerobiłem i teraz już błędów nie ma ale strona dalej się wczytuje wolno albo wogule i tak jest dziś cały dzie dzisiaj adres:
skijump.yoyo.pl sprawdźcie czy wam się ta strona wczytuje. ja wiem że yoyo ma przeciążenia i wolno chodzi ale ta strona dzisiaj wczytała mi się dwa razy a tak to to wogule nie działa

Nie musisz łączyć się z bazą w każdym dołączanym pliku - wszystkie właściwości, zmienne, stałe, itd. są zachowane!

Prawdopodobnie serwer sobie nie radzi z obsługą X stron, które musi jednocześnie przetworzyć i wysłać wielu użytkownikom.


ja wiem że yoyo ma przeciążenia i wolno chodzi ale ta strona dzisiaj wczytała mi się dwa razy a tak to to wogule nie działa

Jeżeli inne strony na yoyo działają to możesz mieć problem ze skryptem. Na localhoście zainstaluj Xdebug i wygeneruj dla skryptu logi profilera i zobaczysz czy to skrypt i gdzie muli ;)

niestety nie mge zainstalować tego Xdebug szukałem w goglach już różne wpisy w php.ini robiłem i nie działa. może jakiś opis do tego czy coś??

http://www.xdebug.org/ - masz windowsowe binarki dla danych wersji PHP:
PHP 4.4.1+ (i wyższe 4.4.X)
PHP 5.1.2+ (podobnie)
PHP 5.2.1+ (podobnie)

ściągasz odpowiednie, dodajesz do katalogu z rozszerzeniami (gdzie jest to nie wiem, popatrz po katalogu zestawu serwera), dodajesz wpis do php.ini i restartujesz serwer. Pod Linuksem zobacz w repozytorim dystrybucji lub standardowa kompilacja (phpize, ./configure, make, make install).

Gdy działa interesuje cię funkcja xdebug_start_trace (http://www.php.rk.edu.pl/w/p/xdebug/)

Sciągłem to PHP 4.4.1+ (i wyższe 4.4.X) bo używam krasnala i php 4 i do folderu (C:\usr\php\extensions) wgrałem plik (php_xdebug-2.0.0rc3-4.4.1.dll) i w php.ini dodałem wpis (zend_extension_ts=C:\usr\php\extensions\php_xdebug-2.0.0rc3-4.4.1.dll) i jak wywołuje funkcje (xdebug_start_trace ()) to wyskakuje komunikat (Fatal error: Call to undefined function: xdebug_start_trace() in c:\usr\krasnal\www\skijump.pl\tester.php on line 4)

ps. a jak dodałem to xdebug przez wpis (extension=php_xdebug.dll) to wyskakuje "Unabled to load dynamic library ścieżka do(poprawana) - nie można odnaleźć określonej procedury."
Użytkownik gregorywojcik edytował ten post 03 kwiecień 2007, 07:08
a zobacz extension=xdebug.dll + spróbuj też zamieniając nazwę pliku z "php_xdebug-2.0.0rc3-4.4.1.dll" na "xdebug.dll"


a zobacz extension=xdebug.dll + spróbuj też zamieniając nazwę pliku z "php_xdebug-2.0.0rc3-4.4.1.dll" na "xdebug.dll"

niestety nie działa wyskakuje:
Unabled to load dynamic library c:\usr\php\extensions\xdebug.dll - nie można odnaleźć określonej procedury."

U mnie też nie działają funkcje wywoływane w kodzie PHP, więc używam programu WinCacheGrind do przeglądania raportów szybkości. Aby jednak było to możliwe, wklej do PHP.INI następujący kod:[xdebug] xdebug.default_enable=On xdebug.auto_trace=On xdebug.profiler_enable=1
Poza tym - jak sprawdzić, ile pamięci zużywają poszczególne funkcje (oraz cały skrypt)?

oto jeden z przykładów wyższości systemów uniksowych nad MS Windows ;)

co do pamięci - xdebug_start_trace to pokazuje jeżeli PHP skompilowane było z memlimit ;) logi xdebuga też pewnie mają RAM po spełnieniu tego warunku.

żadne dodanie wpisów w php.ini nie działa. a w którym miejscu to się wpisuje (bo nie jestem pewien czy w dobrym wpisuje)??
Użytkownik gregorywojcik edytował ten post 03 kwiecień 2007, 19:25
Najpierw dodajesz linijkę zend... z poprawną nazwą pliku .dll, a potem te, które podałem wyżej (najlepiej po liście rozszerzeń extention=...). Wtedy w katalogu TMP na dysku C: powinny pojawiać się logi, które można odczytać odpowiednim programem.

nic z tego nie będzie działać trudno :(
ps. odkryłem coś nowego to nie mój skrypt obciąża strone lecz ten serwer yoyo.pl coś do bani jest jak wgrałem go na inny adres z yoyo.pl strona działa w miarę szybko ale na pewno dużo szybciej niż na skijump.pl
Użytkownik gregorywojcik edytował ten post 04 kwiecień 2007, 20:57
Call to undefined function memory_get_usage()
Niestety, PHP pod Windows zostało skompilowane bez --enable-memory-limit. Używam programu WebServ.

Jeszcze jedna kwestia - czy PHP usuwa zmienne funkcji wraz z argumentami po zakończeniu wykonania jej?

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.