![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 134 Pomógł: 0 Dołączył: 29.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie,
Buduje mały portal, załóżmy że będzie to baza firm, dla każdej firmy chciałbym dodać logo w formacie graficznym. Zastanawiam się jakiej logiki użyć do przechowywania zdjęć. Początkowo myślałem o uploadzie zdjęć do bazy, ale sądzę że przy dużym natężeniu ruchu baza może powodować powolne działanie serwisu. Jakie są inne możliwości uploadu grafiki może poprzez protokół ftp? Jak generować linki do zdjęć? Jak kojarzyć pliki z rekordami w bazie? Może tworzyć katalogi dla każdej firmy żeby nie pogubić się ze zdjęciami? Ten post edytował james8 30.08.2013, 08:16:34 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Nazwa to mniej lub bardziej losowy ciąg znaków, który losujesz aż uzyskasz unikalny wariant (niemal zawsze będzie to za pierwszym razem). To na podstawie czego losujesz nie ma większego znaczenia. Istotne jest tylko byś sprawdzał czy aby na pewno wylosowany ciąg jest unikalny. W żadnym wypadku nie korzystaj ze wspomnianego wyżej znacznika czasu, bo ten nie daje absolutnie żadnej gwarancji unikalności.
2. Pierwszych kilka znaków wylosowanej nazwy możesz potraktować jako nazwy podkatalogów, np. losując "dsadcznsdsado32m2e12dsadsawqkje213.png" finalna ścieżka to "dsa/dcz/nsd/sado32m2e12dsadsawqkje213.png". Jest to o tyle przydatne, że zmniejsza ilość plików w pojedynczych katalogach, co samo w sobie złe nie jest, ale jeżeli chciałbyś przeglądnąć zawartość katalogu z setkami tysięcy plików wiele programów mogłoby się wysypać przy tym. To jak długie będą nazwy podkatalogów i ile ich będzie to już Twoja decyzja. 3. Do bazy ląduje jedynie relatywna ścieżka do pliku, tj.: dsa/dcz/nsd/sado32m2e12dsadsawqkje213.png oraz jakieś metadane. Ewentualnie możesz rozważyć przechowywanie rozszerzenia pliku w osobnej kolumnie, na wypadek gdybyś chciał uniknąć "duplikatów" o różnych rozszerzeniach (abcdef.png oraz abcdef.jpeg). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 13:50 |