![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 18.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam pytanie, ostatnio wdałem się w interesującą konwersacje z Dr. (nie ważne którym ), który powiedział że lepiej przechowywać obrazki (jpg i inne ) w bazie danych niż w systemie plików. Oczywiście że są zalety i wady tego rozwiązania, lecz mnie interesuje prędkość tych rozwiązań. Ogólnie wiadomo że szybciej powinien działać sposób taki: Zapisujemy obrazek do systemu plików (czyli na dysk twardy) i ścieżkę do bazy danych. I jak chcemy wyświetlić obrazek na stronie to pobieramy z bazy danych ścieżkę do obrazka, i ładujemy obrazek. Ogólnie to zawsze tak robiłem (mysql + php). Szukałem co jest lepsze (szybsze), w necie przechowywanie obrazków w BLOBie czy w Systemie plików. I tutaj jest problem, ogólnie większość programistów piszę że blob jest wolniejszy. Ale UWAGA (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) ! nigdzie nie podaję linków do jakiś statystyk, porównań czasu. Przeszukałem setki stron internetowych i nadal nie wiem, co jest szybsze a co wolniejsze i o ile, bo jeśli tylko o 0.00001 s to nie ma co sobie głowę zawracać, ale jeśli o 1 rząd czy o 2 rzędy to już jest problem. Myślałem że mojego Dr. od razu uciszę argumentem wydajności, i szybkości, jednak nigdzie nie jest czarno na białym napisane, co jest szybsze (wydajniejsze). 2) pytanie, który obrazek zajmie mniej miejsca. Ten w bazie danych, czy w systemie plików. 3) czy obrazek z bazy danych, może być chashowany w przeglądarce. (tzn. z moich eksperymentów, prób - nie ponieważ za każdym odświeżeniem strony jest wczytywany na nowo. Ale może ktoś ma konkretne dane. Porównania czasów) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 18.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
Hmm, no w sumie logicznie rzecz biorąc masz racje.
Tylko dlaczego 99% wypowiedzi na forach internetowych, na pomysł przechowywania plików graficznych w bazach danych, odradza tego pomysłu ? [wystarczy w google wpisać: "galeria blob"]. Dlaczego w każdej [ każdej nie czytałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ale dużo] książce do PHP od podstaw do zaawansowanej przy przykładzie upladu plików, jest pokazany przykład z uploadem plików na dysk, i wpisaniem ścieżki do bazy danych. Według mnie to nawet łatwiej jest zapisać plik do bazy danych, niż na dysk. Hmm. Zrobiłem skrycik który testuje pobieranie z pliku i bazy danych:
Ogólnie cały skrypt działa na www.mariopce.tivi.net.pl/blob/aaa.php Podałem ten skrypt z 2 powodów: 1) Pokazać łatwość wykonania 2 sposobów dostępu do danych 2) Poprosić was o pomoc z mierzeniem czasu ładowania obrazków z bazy danych, czyli z zewnętrznego skryptu: view1.php. Funkcja:
Mierzy tylko czas generowania strony php, bez ładowania zewnętrznych grafik. 3) Żebyście zobaczyli że pliki które pobierane są z bloba nie są cashowane przez przeglądarkę. tzn. jak wciśniecie 5x F5 to plik graficzny z bloba będzie wczytany z bazy danych, gdy wczytujemy z bazy danych tylko ścieżkę do pliku, to już jest inaczej, co prawda pobór ścieżki trawa, ale sam plik graficzny jest cashowany.. Chyba że w tym skrypcie popełniłem jakiś błąd ? Jeśli dane binarne z bloba nie są cashowane przez przeglądarkę to tutaj w tym miejscu byłby największy minus, bloba. Jeśli natomiast ktoś znajdzie skrypt który powoduję ze dane binarne będą cashowane to okaże się że więcej zalet ma blob. Teraz jeszcze jedno stwierdzenie: Pliki graficzne można łatwiej zmieniać, np. robić miniaturki. gdy mamy dane zapisane w pliku a nie w bazie danych, [prawda czy fałsz ?] Ogólnie to im więcej czytam o tym blobie tym więcej nie wiadomych niż wiadomych. Dziękuje Ci za wyjaśnienie że gardłem dla plików jest sieć internetowa, może więc blob, nie jest taki straszny jak go malują, i powinniśmy przekonywać do używania blobów, zamiast systemu plików które mają wady. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 16:59 |