kicaj
2.09.2003, 14:23:52
W czym lepiej przechowowywac zdjecia?
W MySQLu w Blob'ie czy na FTP'ie?
Gdzie mniej miejsca zajmuje?
uboottd
2.09.2003, 16:48:49
W zasadzie to troszeczke mniej na FTP-ie, ale nie sadze zaby ta korzysc przewazyla korzystci z trzymania tego w BLOB-ach moim zdaniem. Na pewno masz szybszy do tego dostep (patrzac z punktu widzenia skryptu).
sivyer
2.09.2003, 18:11:48
Gdzies niedawno czytalem, ze nie zaleca sie trzymania wielu wartosci typu BLOB w bazie danych, ponoc to spowalnia baze jako calosc. Jesli znajde gdzies ten tekst albo linka, to podrzuce. Wiadomo Wam cos na ten temat?
uboottd
2.09.2003, 18:32:08
To juz scisle zalezy od uzywanej bazy danych i konstrukcji tabel. W roznych sytuacjach to moze byc roznie, ale mysle ze generalnie i tak bedzie leszym rozwiazaniem od FTP. Konkurencja moglybybyc najwyzej lokalne pliki jesli takie rozwiazanie jest mozliwe.
kicaj
4.09.2003, 21:46:47
to co mi polecacie?
Zalezy mi na szybkosci ładowania i wydajnosci!
Przed dodaniem obrazka bedzie jeszcze zmniejszany przez GD, to odpowiednich wymiarów!
uboottd
5.09.2003, 09:57:36
Jesli FTP kontra BLOB to zdecydowanie BLOB. Nawiazanie polaczenia z FTPem jednak troche trwa (na podstawie obserwacji, teoretycznie nie powinno byc az takiej roznicy, ale jest...)
itsme
5.09.2003, 10:24:04
pytanie co rozumie pod pojeciem FTP jezeli trzymasz zdjecia na tym samym serwerze co skrypty to lepiej bez bazy natomiast jezeli chces sie laczyc z ftp to lepiej BLOB
kicaj
5.09.2003, 12:57:43
pliki moge miec na tym samy serwerze, lub w bazie, co wybrac?
uboottd
5.09.2003, 13:08:27
Jesli masz dostep do plikow z poziomu skryptow za pomoca instrukcji fopen to na pewno bedzie to najszybsze rozwiazanie, i chyba w sumie nawet dosc wygodne.
kicaj
5.09.2003, 13:10:16
nieee!!
Chodzi mi o pliki graficzne, czy mam je wstawiac normalnie (<img src...>) czy ladowac z bazy MySQL i tam je takze przechowywac!
uboottd
5.09.2003, 13:19:06

)
<img src="statyczne_plik.jpg"> zawsze bedzie najszybsze

Myslalem ze chodzi o cos bardziej zakombinowanego...
kicaj
5.09.2003, 13:21:18
hehe nie jest to moze skomplikowane ale zalezy mi na oszczednosci mb
gdzie bedzie mniej zajmowalo?
uboottd
5.09.2003, 13:47:17
Pod wzgledem zajetosci FTP czy pliki to jest to samo, w bazie zajeloby troche wiecej.
kicaj
5.09.2003, 13:48:57
czyli mam robic tradycyjnie, bez bazy?
uboottd
5.09.2003, 13:55:56
Jezeli bierzesz pod uwage tylko szybkosc i zajetosc to tradycyjnie. Nie wiem co grzybisz, wiec trudno cos tu bardziej dywagowac.
itsme
5.09.2003, 14:03:51
Kicaj_: nie wiem o co Ci chodzi o szybkosc czy MB

odpowiedz sobie sam i bedziesz mial rozwiazanie
kicaj
5.09.2003, 14:12:12
Tworze baze userów ze zdjeciami, zdjecia mozna dodawac i usuwac!
Chodzi mi o to gdzie zaoszczedze troszku kilobajtów, czy trzymac standartowo na FTPie czy trzymac w MySQL'u?
No na szybkosci tesh mi napewno zalezy!
uboottd
5.09.2003, 14:14:40
W zasadzie to napisz jak umiesz (czy jest Ci latwiej/wygodniej). Roznice sa zbyt male zeby dyskutowac o tym w watku na juz dwie strony.
kicaj
5.09.2003, 14:23:33
zrobie chyba standartowo...
Za jakis czas przeprowadze test pomiedzy:
standartowym plikiem graficznym na FTPuie,
a plikiem trzymanym w BLOB'ie w MySQL'u!
Wyniki opublikuje tutaj!
radzaw
6.09.2003, 16:43:31
prosty test mowi co jest lepsze :
Cytat
z pliku : 0.039194941520691
z bazy : 0.12915802001953
[php:1:e72fda95fc]<?php
function podaj_czas()
{
$mtime = microtime();
$mtime = explode(" ",$mtime);
$mtime = $mtime[1] + $mtime[0];
return $mtime;
}
$start=podaj_czas();
$plik=fopen("fotka.jpg","r");
while (!feof($plik)) echo fread($plik,1024);
fclose($plik);
$stop = podaj_czas();
$czas=$stop-$start;
echo "z pliku : $czas";
$start = podaj_czas();
@mysql_connect("localhost", "**", "**");
@mysql_selectdb("test");
$wynik=@mysql_query("SELECT dane FROM fotki WHERE id=2");
$dane=@mysql_fetch_array($wynik);
echo $dane['dane'];
@mysql_close();
$stop= podaj_czas();
$czas=$stop-$start;
echo "z bazy : $czas";
?>[/php:1:e72fda95fc]
gdzie :
[sql:1:e72fda95fc]CREATE TABLE `fotki` (
`id` int(10) unsigned NOT NULL auto_increment,
`dane` mediumblob NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM; [/sql:1:e72fda95fc]
skooot
12.09.2003, 21:14:18
jestem przekonany ze najlepszym rozwiazaniem jest trzymanie obrazkow na serwerze uploadujac je do odpowiedniego katalogu i zmieniajac im nazwe, jak bedziesz trzymal je w blobie i jeszcze dodatkowo pozwolisz na kosowanie ich uzytkownikom i ladowanie nowych moze sie po pewnym czasie okazac, ze zasmieca ci baze i zacznie wolno dzialac, bedziesz musial robic indeksacje i czyscic ja co jakis czas ze zbendnych wpisow, ktore beda tylko zajmowaly miejsce.
pozdr.
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.