Případová studie - Když upload stovek fotografií nesmí skončit prvním výpadkem.
AuraWed pomáhá fotografům předávat hotové fotografie jejich klientům. Jednou z klíčových částí celého produktu je proto něco, co na první pohled působí jednoduše: dostat velké množství fotografií bezpečně z počítače fotografa až do klientské galerie.
V praxi ale nestačí obyčejný formulář pro nahrávání souborů. Fotograf může pracovat se stovkami fotografií najednou, připojení může během přenosu vypadnout a stejný požadavek může být kvůli opakovanému pokusu odeslán vícekrát.
Naším úkolem bylo navrhnout a vyvinout upload pipeline, která s těmito situacemi počítá od začátku.
- Klient
- Tom Greiner
- Projekt
- Aurawed
- Období
- 2026
- Služby
- Webový vývoj · Cloudová infrastruktura · WordPress

Výchozí situace
Velké soubory a nestabilní připojení nejsou výjimka. Jsou součást provozu.
Při předávání fotografií klientům se pracuje s výrazně většími objemy dat než u běžného webového formuláře.
Jeden přerušený upload by neměl znamenat, že fotograf musí celý přenos zahájit znovu. Stejně tak nesmí opakovaný požadavek vytvořit několik kopií stejného záznamu nebo dostat systém do stavu, ve kterém není jasné, co se s fotografií skutečně stalo.
Upload jsme proto navrhli jako samostatný proces s vlastním stavem každého souboru, kontrolou jednotlivých kroků a možností bezpečně pokračovat po chybě.
Fotografie putují přímo do úložiště
Aplikační server nemusí přenášet každý megabajt fotografie.
Místo klasického nahrávání přes webový server jsme připravili přímý upload do objektového úložiště.
Aplikace nejprve ověří uživatele, jeho oprávnění a potřebné podmínky pro nahrání souboru. Samotná data fotografie potom mohou putovat přímo do úložiště bez zbytečného průchodu přes aplikační vrstvu.
Tím se odděluje práce aplikace od samotného přenosu velkých souborů a vzniká architektura vhodnější pro rostoucí objem fotografií.
Upload, který může pokračovat
Výpadek připojení nemusí znamenat začít znovu.
Celý proces jsme připravili na situace, kdy se přenos nepodaří dokončit na první pokus.
Systém průběžně eviduje stav jednotlivých souborů a umožňuje neúspěšné operace řízeně opakovat. Fotograf tak nemusí ztratit celý průběh nahrávání jen proto, že během přenosu na chvíli vypadlo připojení.
Stejný princip platí i na straně serveru. Opakované nebo duplicitní požadavky jsou zpracované tak, aby systém nevytvářel nekonzistentní stav jen proto, že určitá operace dorazila podruhé.
Nahráno ještě neznamená hotovo
Soubor označíme jako připravený až ve chvíli, kdy víme, že skutečně existuje.
Jednou z důležitých částí pipeline je ověření výsledku.
Nestačí spoléhat na to, že požadavek na upload proběhl bez chyby. Systém před dokončením procesu ověřuje, že se očekávaný soubor skutečně nachází v úložišti a může být bezpečně navázán na správné album a uživatelský účet.
Teprve potom se fotografie posune do dalšího stavu. Díky tomu databáze nepracuje pouze s předpokladem, že se přenos pravděpodobně povedl, ale s ověřeným stavem skutečně uloženého souboru.
Zpracování na pozadí
Fotograf nemusí čekat na dokončení každé interní operace.
Část práce spojené s uploadem jsme přesunuli do zpracování na pozadí.
Jednotlivé kroky tak mohou být prováděny a v případě potřeby opakovány nezávisle na původním požadavku z prohlížeče.
Krátký výpadek jedné části systému proto nemusí znamenat ztrátu informace o fotografii nebo nutnost celý proces spustit od začátku.
Napojení na existující AuraWed
Nová upload pipeline nemohla stát vedle produktu. Musela se stát jeho součástí.
Řešení jsme integrovali do existujícího prostředí AuraWed včetně návaznosti na WordPress editor, uživatelské účty a alba.
Pro fotografa tak nevzniká další samostatný nástroj. Nahrávání zůstává součástí workflow, ve kterém následně spravuje fotografie a předává je klientům.
Co jsme na projektu řešili
Upload pipeline
Kompletní proces od výběru fotografií v prohlížeči až po jejich ověření a zařazení do správného alba.
Přímé nahrávání
Přenos velkých souborů přímo do objektového úložiště bez zbytečného zatěžování aplikačního serveru.
Obnovitelné uploady
Možnost pokračovat po přerušeném přenosu a řízeně opakovat operace, které se napoprvé nepodařily.
Kontrola a validace
Ověření uživatele, oprávnění, dostupné kapacity i existence výsledného souboru před dokončením procesu.
Background processing
Zpracování jednotlivých kroků na pozadí s ohledem na výpadky a opakované požadavky.
Integrace
Napojení nové infrastruktury na existující WordPress prostředí, alba a uživatelské účty AuraWed.
Výsledek
Technický základ, který počítá s reálným způsobem práce fotografa.
Výsledkem je upload infrastruktura navržená pro situace, které při práci s větším množstvím fotografií skutečně vznikají — velké soubory, kolísající připojení, přerušené přenosy nebo opakované požadavky.
Místo jednoho křehkého uploadu vznikl proces, který průběžně ví, v jakém stavu se každý soubor nachází, dokáže na neúspěšný krok navázat a fotografii označí jako připravenou až po ověření jejího skutečného uložení.
AuraWed tak získal základ, na kterém může dál stavět předávání fotografií mezi fotografy a jejich klienty.

