![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 6.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Proszę o doradzenie jak lepiej zrobić:
Mam masę plików o nazwach: dsaf3jkbcs.1.jpg dsaf3jkbcs.3.jpg dsaf3jkbcs.4.jpg ... 4jb5kn53jj.1.jpg 4jb5kn53jj.3.jpg 4jb5kn53jj.4.jpg ... itd. Zastanawiam się jak lepiej zrobić aby strona chodziła wydajniej (zakłądając ze tych plików może być nawet 1000000). 1. Pliki umieścić w jednym katalogu, a żeby je wyświetlić to:
CZY 2. Pliki o tym samym ID umieszczać do folderu o tym ID ? - Nie trzeba by używać funkcji glob() do wyszukiwania plików bo linki mógłbym wygenerować. Ale czy ilość katalogów na serwerze może go spowolnić ? Proszę o odpowiedzi jaka byłaby różnica między wydajnością obu tych rozwiązań i co by było lepsze. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Krótki test: 60 tysięcy plików w katalogu. Najprostszy dostęp do listy wszystkich plików to wylistowanie wszystkich plików z poziomu systemu operacyjnego. Czas: 1.8 sekundy (Linux, Sempron 2500, dysk SATA, system plików ext3). Dołóż narzut na ftp (jak pisał thek) i nie wiem, ile czasu poczekasz na łączu. wylistowanie jednego pliku z konkretną nazwą oczywiście odbywa się momentalnie. Ale już przy 60k plików spowolnienie jest zauważalne. Przy liniowości spowolnienia na listing plików poczekałbyś pół minuty.
Wniosek: grupować. Argument "ZA" - projektanci squida (proxy www) też używają grupowania - dwa poziomy katalogów i dopiero dalej plik (jest to sprawa do ustalenia w pliku konfiguracyjnym). I jest to dostępne odkąd pamiętam (czyli można uznać, że "od zawsze") |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 18:47 |