Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: szybkość skryptu.
Forum PHP.pl > Forum > Przedszkole
stefan86
Witam,

Tworzę serwis. Serwis społecznościowy w którym każdy użytkownik będzie miał swój folder na serwerze. Nazwa tego folderu będzie nickiem użytkownika. Powiedzmy, że będę miał sto tysięcy użytkowników a więc folderów. Czy takie rozwiązanie będzie szybkie, czy skrypt będzie szybko odczytywał dane z takiego folderu znajdującego się w gąszczu innych folderów? A jak byłoby z szybkością wyszukiwania konkretnego użytkownika, czyli po prostu z szybkością sprawdzania czy po prostu folder z konkretną, wyszukiwaną nazwą istnieje?
nowotny
Ja bym tam się nie bawił w foldery... od tego są bazy...
phpion
@radex_p:
Czy nie uważasz, że Twoja odpowiedź jest lekko nie na temat?
/* chyba jednak kolega tak uznał bo usunął posta hehe */

Ale wracając do tematu: ciężko powiedzieć jak to będzie wyglądało. Mamy różne systemy operacyjne, różne systemy plików, a co za tym idzie różne sposóby przechowywania i dostępu do plików. Z tego co się orientuję (na podstawie wykładów z Systemów Operacyjnych) przy małych* rozmiarach plików wydajniejsze są systemy z rodziny Windows, natomiast większe pliki lepiej są obsługiwane na systemach Unixowych. W twoim przypadku pewnie większość to będą małe pliki.

* pojęcie "mały plik" nie zostało uściślone tongue.gif
stefan86
No dobra - co jest szybsze - dodawanie userów do bazy i tam przeszukiwanie czy istnieje dany user czy moze szybsze jest sprawdzanie czy istnieje folder o jakieś konkretnej nazwie - nazwie użytkownika.

Nie pytam się co byście użyli tylko co jest szybsze.
GrayHat
Wszystko jest zależne od serwera postawionego pod aplikacją i skonfigurowanego tam systemu plików
stefan86
A jest jakaś możliwość symulacji wydajności skrytpu? Aby sprawdzić czy skrypt będzie wydajny gdy on-line jednocześnie będzie siedziało paruset aktywnych uzytkowników. Da się to jakoś sprawdzić czy trzeba czekać aż faktycznie nastanie taka chwila?
Snowak
Bazy danych są z reguły szybsze przy dużej ilości użytkowników. Używanie plików do przechowywania danych to przy dużych serwisach cholernie nieoptymalne rozwiązanie.

btw. Windows działa wolniej jeżeli masz więcej katalogów w katalogu, który sprawdzasz a w Linuxie wg. autorów to nie ma znaczenia.
stefan86
Cytat(Snowak @ 3.02.2008, 00:51:51 ) *
w Linuxie wg. autorów to nie ma znaczenia.


Czyli szybkość przeszukiwania folderów w celu odnalezienia takiego o szukanej nazwie nie jest zależna od ilości folderów do przeszukania?

Czy coś innego miałeś na myśli pisząc:
Cytat(Snowak @ 3.02.2008, 00:51:51 ) *
sprawdzasz

?
pijanyadmin
jeśli chcesz mieć foldery jako nick to łatwiej jest [i raczej wydajniej] przeszukiwać pod wzgledem istnienia rekordy w bazie, jednak jesli w folderach masz np. zjdecia to optymalniej przy wiekszej ilośći jest w bazie umieszenie adresów do nich niz, całych zdjęć do bazy
phpion
Cytat(stefan86 @ 3.02.2008, 01:37:12 ) *
A jest jakaś możliwość symulacji wydajności skrytpu? Aby sprawdzić czy skrypt będzie wydajny gdy on-line jednocześnie będzie siedziało paruset aktywnych uzytkowników. Da się to jakoś sprawdzić czy trzeba czekać aż faktycznie nastanie taka chwila?

Możesz użyć wbudowanego w Apache softu o nazwie Apache Bench:
http://httpd.apache.org/docs/2.0/programs/ab.html
lub użyć innego softu (graficznego):
http://jakarta.apache.org/jmeter/usermanua...-test-plan.html
Osobiście jeszcze nie rozkminiłem JMeter do końca tongue.gif
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.