Autor Zpráva
Izolex
Profil
Ahoj,
je lepší při ukládání na server obrázek uložit pouze jednou a poté ho vždy u výstupu ořezat pomocí skriptu na požadovanou velikost, nebo ořezat obrázek při ukládání a uložit ho vícekrát v různých velikostech?
Potřebuji jeden obrázek na webu zobrazovat v třech různých velikostech.
Předem děkuji za odpověď.
mimochodec
Profil
Je lepší zdržet člověka o sekundu jednou při nahrání, nebo jich zdržet tisíc denně při zobrazení?
peta
Profil
U tech velikosti bych jste zvazil nutny pocet. treba ti staci vygenerovat 2-3 a ostatni uz nechas html zmensit o ten kousicek. 60x60 da rekneme 2k obrazek a nekdy je zbytecne generovat ikonku 16x16 o velikosti 0,5k. Jindy pak diky zmensovacim metodam v prohlizeci je lepsi to zmensit pres php pro 16x16 aspon na 32x32.
Kazdopadne, predgenerovane mensi velikosti ti zaberou tak max 1/10 navic za cenu zvyseni rychlosti rekneme 3x pro stranku posazenou obrazky.
PPs
Profil *
Treba zvážiť:
1) generovanie obrázka pri každom volaní stojí nejaký čas. Mám dostatočné serverové prostriedky pre potrebný počet volaní?
2) každá kópia sa ukladá a zaberá priestor. Mám pri danom počte obrázkov dostatok priestoru? Koľko ma stojí zálohovanie?
3) ako často sa mení vzhľad webu? Plánujeme výstup aj pre iné desktopy?

Osobne som bol kedysi zástanca generovania potrebných rozmerov, hneď pri ukladaní obrázku aby som šetril serverové prostriedky. Dnes toto riešenie považujem za prežitok.
1) Serveri sú dostatočne výkonné a zmena rozmerov v php nie je až tak náročná záležitosť
2) Vždy keď pracujem s originál obrázkom viem ľahko zmeniť rozmer v prípade potreby, vodotlač
3) Pri veľkom počte obrázkov nie sú nároky na veľký dátový priestor
4) Pri tomto riešení sa vždy dá spraviť cache pre tie obrázky čo sa volajú veľa krát v priebehu minúty počas dlhšieho obdobia, alebo je na to iný dôvod.

Príklad fórum: Obrázky sa neoplatí dávať cez cache. Síce môže tam byť chvíľku nápor, ktorý, ale opadne v priebehu pár hodín.
Príklad obrázok pre stránky partnerov, načítavaný v 1000 denne. Použi cache.

Generovanie obrázkov pri ich volaní s prípadným použitím cache máš dobré, flexibilné riešenie.
panther
Profil
Izolex:
pokud mas kapacity, generuj obrazky ve velikostech, ktere pouzivas. Zaroven si navrhni web tak, abys na kazde strance nepouzival jinou velikost obrazku.

Rozhodne se nerid tim, co napsal peta: „60x60 da rekneme 2k obrazek a nekdy je zbytecne generovat ikonku 16x16“. Kdyz zmensis obrazek 16x, bude vystup stat za houby. Nejde o datovou velikost, ale o kvalitu. Ostarne si to muzes zkusit.

PPs:
2) Vždy keď pracujem s originál obrázkom viem ľahko zmeniť rozmer
mozna proto je nejlepsi reseni drzet krome pozadovanych rozmeru i original (nebo obrazek v rozliseni vetsim, nez je potreba nejvyssi, ktery se bude za original pokladat). Je zbytecne drzet 10Mpx obrazky od klienta, ale zmensena na 2Mpx uz je vhodne je drzet, prestoze tuto 'originalni' velikost nikde nepotrebujes.
Frozen
Profil
Nejdřív si zamysli nad tím, pro co ten web bude a kolik asi tak obrázků bude obsahovat. Já jsem zastáncem pro malé projekty nechat obrázky ořezat do velikosti jenž mají mít na webu už při vložení.

Když jsem si dovolil tohle udělat na inzertním serveru, tak jsem cca po 2 měsících provozu musel řešit problém s počtem inodů na serveru (500 tis.). Takže jsem musel psát funkce, které zachovaly originály, smazaly jiné rozměry a funkci pro zobrazení obrázku dle velikosti. Pak samozřejmě na všech místech co jsou obrázky dát url na soubor s obrázkem.... a to vše za chodu, tak aby nebyl narušen chod serveru....

Takže pokud je to jen nějaký prezentační web firmy a je dosti nepravděpodobné takovéto velké množství dat, použil bych ořezání, již při vložení. Pokud by mohl být v budoucnu nárůst dat takový, aby si musel dělat něco podobného jako já, tak rovnou zvol ořezání při výstupu.

Dobré je také rozdělovat obrázky do podsložek, pokud očekáváš, že jich bude mnoho, aby si předešel zdlouhavému načítání třeba při záloze, případně pokud budeš chtít něco dohledávat.
Izolex
Profil
Děkuji všem za odpovědi. Vyřešil jsem to tedy ukládáním několikero obrázků v různých velikostech.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0