Cache obrázků nebo jiný mechanismus?
- wise
- Člen | 161
Zdravíčko,
mám takovou technickou :) Mám 100 obrázků, průměrná velikost 1kb.
Obrázky mám definované v css a akorát volám selektory.
Moje idea je taková, že když přijde uživatel poprvé na stránky, tak se
mu to načte
a poté se to uloží (do cache?) a už to při procházení stránek, při
opětovném
návratu atd. nebude muset stahovat.
Pokud je to tedy realizovatelné cachem, jak k těm obrázkům potom budu přistupovat?
Díky moc za hinty :-)
- wise
- Člen | 161
Proč invalidovat cash? Tahám data z databáze a pro zjednodušení mají sloupec, kde je číslo obrázku. A to se použije jako selektor.
Proč invalidovat? Měl jsem za to, že keš funguje tak, že si načtu data, uložím do keše, při reloadu zjistím, jestli jsou v keši, pokud ano, vemu je odtamtud a nemusím ty obrázky načítat. Nebo to lze např. jen pro data?
- wise
- Člen | 161
Vždyť ale nekešuju na straně serveru ne? Do template si načtu data, potom je ve foreach vypisuju a akorát dělám následující věc: <span class=„image$row->image“></span>. Nejde nějak určit, že se má načíst ten a ten obrázek? (Pokud sem vedle, tak se omlouvám, asi nechápu pořád, jak to funguje :)
- Matúš Matula
- Člen | 257
prečo to nenechať na browseri, nech si obrázky kešuje sám?
P.S. Vynútiť si ukladanie/kešovanie dát na strane klienta je pokiaľ viem možné iba použitím cookies (ak pominiem HTML5 úložiská, ktoré majú zatiaľ slabú podporu), ktoré s týmto ale nemajú nič spoločné :)
- Filip Procházka
- Moderator | 4668
Malinké ikony… hmmm a co trochu jiný přístup? https://github.com/…an/icons2css
- Patrik Votoček
- Člen | 2221
base64 pokud vím má problém v tom že nefunguje ve všech prohlížečích… (bohužel si nevzpomenu ktere to jsou)
- Patrik Votoček
- Člen | 2221
jinak se jedná o cache na straně klienta která je řízená hlavičkama… takže bych si pohrál s něma…
- Matúš Matula
- Člen | 257
tiež odporúčam článok, kt. zmienil @tenerd
– je tam zrejme
všetko, čo potrebuješ.
Inak ak ti ide o zníženie počtu requestov na server, tak by som zvážil použitie css sprites
- Honza Kuchař
- Člen | 1662
Ja bych na to sel temito stupni:
- Nactu obrazek z databaze, pokud neni v serverove cachi
- odeslu hlavicky, aby se obrazek cachoval na strane klienta
Odmenou ti bude rychle prohlizeni webu a nizka zatez na serveru.
- newPOPE
- Člen | 648
Pride mi trochu divne ako sa nad tymto medituje…
Pokial sa jedna o ikony → pristup ako pise Matus (css sprites) pozri si jQueryUI theme framework tam je to vyriesene ;-) cez .selectory (tak ako to zrejme mas aj ty)
Pokial sa jedna o uzivatelsky obsah, tak cesta imagecache (ala Drupal, divim sa ze to este nikto nenapisal :-), ja taku mini componentu na to mam, zatial neverejnu ;-) ).
work flow:
- request na obrazok (…/image-cache/200×100/{cesta-k-obrazku}/hello.png)
- vygeneruje sa obrazok na spravnu velkost (podla napr. profilu 200×100)
- ulozi sa sa na tej ceste priamo vo www foldri (cize tu) /root/…/www/image-cache/200×100/…/hello.png
- 2-x request sa uz spracuje na urovni serveru
Editoval newPOPE (12. 4. 2011 0:49)
- Patrik Votoček
- Člen | 2221
newPOPE napsal(a):
Pokial sa jedna o uzivatelsky obsah, tak cesta imagecache (ala Drupal, divim sa ze to este nikto nenapisal :-), ja taku mini componentu na to mam, zatial neverejnu ;-) ).
mám implementované už více jak rok (možná dva) https://github.com/…resenter.php#L38
nicméně tady je to o něčem jiném