INTEGRITY Dokumentace

Optimalizace doručování obrázků pomocí Cloudflare image resizing a R2

Úvod

Optimalizace doručování obrázků na webech je klíčová pro zlepšení uživatelského komfortu. Jelikož obrázky často tvoří největší část dat webu, výrazně ovlivňují dobu načítání stránek, umístění ve vyhledávačích, náklady na doručování i celkový výkon. Tento diagram referenční architektury vás provede přímočarým, škálovatelným a vysoce výkonným řešením. Stačí upravit řetězec URL tak, aby specifikoval velikost a kvalitu obrázku, a optimalizovaný obrázek pak lze uložit do mezipaměti a doručit každému uživateli, který o daný formát požádá. Níže jsou uvedeny komponenty Cloudflare, které se na tomto řešení podílejí:

Image Delivery pomocí Cloudflare Image Resizing a R2

Obrázek 1: Cloudflare Image Resizing a R2
Obrázek 1: Cloudflare Image Resizing a R2
  1. Požadavek uživatele: Uživatel odešle HTTP požadavek na obrázek (image.jpg), přičemž transformace, jako je šířka a kvalita, zadá přímo v URL adrese jako seznam parametrů oddělených čárkami.
  2. Cache Hit: Cloudflare zpracuje požadavek v místě přítomnosti nejbližším uživateli. Nejprve zkontroluje, zda požadovaná transformace obrázku už není v cache Cloudflare. Pokud ano, obrázek se uživateli vrátí okamžitě a další zpracování odpadá. Pokud ne, požadavek pokračuje do dalšího kroku.
  3. Transform Rules (volitelné): Pokud přecházíte z jiného řešení pro obrázky, může být potřeba přepsat cestu URL a query string pomocí pravidla pro přepis, abyste se při migraci vyhnuli složitým úpravám na úrovni aplikace. Podporovány jsou dynamické i statické přepisy, přičemž dynamické přepisy navíc podporují složité výrazy pro širokou škálu přepisů URL.
  4. Cache MISS - R2: Pokud požadovaný obrázek není v cache Cloudflare k dispozici, požadavek se odešle na origin server, kterým je v tomto scénáři R2 Object Storage od Cloudflare platformě. V R2 se ukládají pouze původní obrázky, žádné zmenšené varianty se do R2 bucketu neukládají, což usnadňuje provoz R2 bez pravidel životního cyklu objektů.
  5. Transformace obrázku: Na základě syntaxe URL odeslané v kroku 1 nebo transformované v kroku 3 Cloudflare Images transformuje obrázek a odešle ho do mezipaměti (Cache), než ho vrátí koncovému uživateli v podobě požadovaného obrázku.

Referenční přehled syntaxe URL pro Image Resizing

Obrázky můžete snadno konvertovat a měnit jejich velikost tím, že je vyžádáte prostřednictvím speciálně formátované URL adresy. Tato část vysvětluje strukturu URL adresy pro transformaci obrázků, odkazuje zpět na diagram a podrobně popisuje jednotlivé součásti URL adresy:

Konečná adresa URL použitá v požadavku by vypadala takto:

https://www.mywebsite.com/cdn-cgi/image/width=80,quality=75/uploads/image.jpg