Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zacięcia aplikacji
Forum PHP.pl > Forum > Serwery WWW > Apache
mbork
Witam
Mam problem
Opisze najpierw jak wyglada mój "wynalazek".

System składa się z dwóch programów napisanych w php,JavaScript,Html,css
Pierwszy program (moduł zdalny) jest zainstalowany na laptopach powiedzmy 10
Drugi program (moduł lokalny) znajduję się na jednym serwerze w WAN

Praca ludzi z laptopami polega na zbieraniu danych. Importuja oni dane z systemów lokalnych i jadą w teren. Po powrocie podpinają się pod WAN i robia export danych. Wtedy inne osoby w Wanie z dowolnego komputera za pomocą przeglądarki oczywiście po autoryzacji wykonują dalsze przetwarzanie danych.

Na laptopach zainstalowany jest pakiet apache,php,mysql (krasnal) no i mój program do zbierania danych.
Na serwerze w Wan rónież jest ten sam zestaw oczywiście z innym programem.

I wszystko działa OK

Ale ostatnio jedna z osób dostała troche straszego laptopa ibm Pentium 500MHz 128Mb.
Po przekroszczniu pewnej liczby danych powiedzmy 1000 pozycji program co np 12 wprowadzaną pozycję ma spowolnienie w trakcie róznych operacji zapisy,odczytu danych. Jest to trochę denerwujące. Mam pytanko co może być tego przyczyna - może jakieś specjalne ustawienia pomogą. Wygląda to tak jakby system wykonywał aktualizację cache co jakiś czas.
Dodam że na innych laptopach o lepszych parametrach problem ten niewystępuje.
Oczywiście rozwiązanie polegalące na kupieniu lepszego laptopa odpada.

Z góry dziękuję za pomoc.
scanner
Znaczy się co się zacina? Skrypt/ Czy środowisko serwera? Czy system?
mbork
np po wprowadzeniu ilości jakiegoś towaru i zatwierdzeniu [enter] formularza nastepuje zacięcie "trwa otwieranie strony..." - może trwać nawet 30 sek
Co ciekawe wystarczy wykasować całą bazę i uruchomić skrypt zakładający ją od początku i jest spokój do pewnego czasu.
Powiem dokładniej program między innymi zczytuje towary czytnikiem kodów kreskowych. Wyszukuje dany towar w bazie a następnie prosi o podanie jego ilości
W trakcie wyszukiwania i zapisywania może nastapić takie zacięcie.
kszychu
A może jest mało miejsca na dysku?
mbork
sprawdziłem jest ok 1 GB wolnego

może wstawić
dane z phpinfo()
http.conf
php.ini
my.ini
Co ciekawe program chodzi szybko (wyszukuje , zapisuje) a te zacięcia pojawiają się co jakiś czas.
spenalzo
Sprobuj zoptymalizować zapytania, kod itd
To że chodzi szybko na serwerze, to nie znaczy ze na starszym sprzecie bedzie szybko chodzic - w koncu po to sie placi duzo za serwer żeby był wydajny smile.gif
ARJ
OT ale w php wczytujesz kody kreskowe czytnikiem? @scanner szuka takiego rozwiązania.
Sh4dow
W miare mozliwosci sprawdz ile pamieci pozera mysql i apache kiedy jest tak duza ilosc danych. I co tak spowalnia go, czyli ktory proces obciaza procesor.
Lukasz Luczak
Używasz Krasnala tam ?

To polecam defragmentację dysku a potem ręczny zapisanie kofiguracji MYSQL, php i Apache, bo ta co jest standardowo dodawana jest do bani.

Z jakich typów tabel korzystasz ? Jeśli Krasnal to pewnie nie wykorzystujesz żadnych z transakcjami.

Powiadasz, że spowolnienia pojawiają się przy operacjach na bazie danych (możesz to sprawdzić odpalając w konsoli dos'a program do operacji na bazie MySQL i w nim robiąc testy wydajności)

Na moim laptopie (300MHz, 64Mb ram, 200Mb wolnego na dysku) nigdy nie mam problemów z zacięciami - mimo iż wproawadzam dużo danych itp.

Problem może leżeć takze po stonie systemu operacyjnego - polecam zainstalować od nowa Win98, nie uruchamiać żadnych dodtkowych programó - tylko serwer Krasnala. Do tego pełny scandisk (ze sprawdzeniem fizycznym) oraz defragmentacja.

Jak teraz będzie muliło to znaczy, że musisz przepisać od nowa skrypty.

W wypadku serwera Krasnal może sie zdarzyć, ze będziesz musiał własnoręcnzie przepsiać konfigurację - niestety ta standardowa jest lekko wymagajaca i nieefektywna.

Po prostu - popracuj sporo a ręczę Ci, że z tego laptopa wyciśniesz bardzo dużo. Ja na kompie 500 Mhz, 128Mb ram miałem ustawiony serwer (www,ftp, poczta) i potrafił on wytrzymać forum phpbb z średnio 20 użytkownikami aktywnie korzystajacymi z forum w danej chwili. Więc ze swojego laptopa na pewno dużo wyciagniesz.

Jak co to możesz pytać na PW.

Pozdrawiam
mbork
Dziękuję wszystkim za pomoc ale znalazłem rozwiązanie
Moja wina, moja wina.....
Pogram ma pewna ramkę w ktorej wyświetlane są pewne wartości podsumowania
Ramka ta jest odświeżana po każdej operacji.
Dane do tych wartości wyliczne są bezpopśrednio z bazy za pomocą "group by"
wystarczy sposób wyliczania oprzeć na zmiennych sesyjnych a program hula aż miło.
Chociaż sposób, że za każdym razem dane są wyliczne z bazy jest dobry ponieważ ma się pewność że one tam są na pewno smile.gif
ale to chyba raczej problem psychiczny

ps
Laptop z celeronem 2.4 zaczeły się dławić dopiera jak było wprowadzonych ok 1 miliona rekordów (dane wygenrowałem dla testu) po zmianie sposoby wyliczania wartości chodziły przy milionie tak jak i przy 10 rekordach.

Wniosek: polecenie select jest wydajne ale z klauzulą "grup by" przy dużej liczbie rekordów operacje zaczynają wymagać czasu.
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.