Chystáte kampaň, investujete do reklamy a na váš e-shop najednou dorazí tisíce lidí. Právě v tu chvíli musí vše běžet rychle a bez problémů. Realita je ale často jiná. Mnoho WooCommerce obchodů takovou zátěž nezvládne: stránky se začnou načítat pomalu, objevují se serverové chyby a část zákazníků odchází, protože se jim nepodaří dokončit objednávku.

Nejčastěji selhává databáze, hosting naráží na limity nebo není správně nastavený caching. Přitom těmto výpadkům lze předejít, pokud se e-shop optimalizuje včas.

V tomto článku vám ukážu osvědčené postupy, které používám při přípravě WooCommerce obchodů na vysoký provoz: od architektury serveru, přes caching a databázovou optimalizaci až po monitoring a krizový plán.

👉 Pokud vás zajímá víc o tom, co znamená vývoj e-shopu na míru, mrkněte na moje služby.

Proč WooCommerce e-shopy při kampaních padají

Když e-shop spadne uprostřed kampaně, první reakce majitelů často zní: „WooCommerce to prostě nezvládlo.“ Ve skutečnosti ale problém nebývá v samotné platformě. WooCommerce dnes pohání statisíce obchodů po celém světě, včetně těch s obrovskou návštěvností. Slabým místem většinou není systém, ale infrastruktura a způsob, jakým byl e-shop postavený.

  • Hosting – většina e-shopů jede na sdíleném hostingu nebo slabém VPS. To stačí pro běžný provoz, ale ne pro nápor tisíců uživatelů během jediné hodiny.
  • Databáze – MySQL/MariaDB zpracovává u každé objednávky desítky dotazů. Bez indexů a optimalizace se dokáže rychle zahlitit.
  • PHP procesy – PHP-FPM má omezený počet workerů. Jakmile začnou čekat na databázi, nové požadavky stojí ve frontě a web končí chybami 502/504.
  • Pluginy – špatně napsané nebo zbytečně složité pluginy, velké množství pluginů.
  • Chybějící caching a CDN – pokud web neservíruje statické stránky z cache a obrázky z CDN, každý požadavek zbytečně zatěžuje server i databázi.

Tyto problémy se projeví přesně v okamžiku, kdy potřebujete, aby vše fungovalo nejlépe – během kampaní.

Následky pro e-shop

Pád e-shopu uprostřed kampaně není jen drobná komplikace. Znamená okamžitou ztrátu penězdůvěry zákazníků. Reklama dál přivádí návštěvníky, ale web se načítá pomalu, vrací chyby nebo přestane fungovat úplně.

Dopady jsou větší, než se na první pohled zdá:

  • Nedokončené objednávky = okamžitý pokles tržeb.
  • Marketing běží dál, i když web nefunguje → doslova pálíte peníze.
  • Pomalé nebo nefunkční stránky poškozují SEO – Google penalizuje pomalé weby (viz Core Web Vitals).
  • Zákazníci, kteří narazí na chybu při nákupu, se často už nevrátí.
  • Stres pro tým – místo obsluhy zákazníků řeší krizi.

Podle Odown stojí výpadek webu v průměru 5 600 USD za minutu. U velkých e-shopů jde i o více než 9 000 USD/min. Amazon při 59minutovém výpadku v roce 2021 přišel odhadem o 34 milionů dolarů (UptimeRobot)

Jak připravit WooCommerce na špičku

Základem je vyhnout se neodborně poskládaným řešením postaveným na pagebuilderu a desítkách pluginů. Ty mohou fungovat v běžném provozu, ale pod zátěží se jejich slabiny rychle projeví. Vývoj e-shopu na míru znamená čistý kód, optimalizované databázové dotazy a architekturu, která se dá bez problémů škálovat.

Hosting a infrastruktura

  • VPS pro menší projekty: 2 – 4 vCPU, 4 – 8 GB RAM. Dobré pro začátek, ale ne pro velké akce.
  • Dedikované servery: vyšší výkon, možnost oddělit databázi, Redis a webserver.
  • Cloud hosting (AWS, GCP, Azure, DigitalOcean, Hetzner): flexibilní škálování. Pro kampaně lze přidat servery (scale-out) a po akci je odstavit.
  • Managed WordPress hosting (Kinsta, WP Engine): Řeší mnoho věcí za vás, ale vyžadují i tak testování a přípravu.

Caching: bez něj to nejde

  • Page cache: WP Rocket, Nginx FastCGI cache nebo Varnish.
  • Object cache: Redis nebo Memcached.
  • CDN: Cloudflare nebo BunnyCDN pro obrázky, CSS a JS.

Optimalizace WooCommerce a pluginů

  • Omezte počet pluginů: méně = rychlejší web. Nahraďte multifunkční pluginy jednoduššími, dělanými na míru.
  • Query Monitor: sledujte pomalé dotazy a pluginy, které brzdí databázi.
  • Plugin Index WP MySQL For Speed: Plugin, který doplní chybějící indexy a znatelně zrychlí dotazy. Pro WooCommerce je to často zásadní změna.
  • Optimalizace šablony – lehčí, custom šablona je rychlejší než pagebuilder.

Škálovatelná architektura

  • Load balancer (HAProxy, Nginx).
  • Více webserverů.
  • Oddělená databáze: primární pro zápisy, repliky pro čtení.
  • Dedikovaný Redis server.
  • Worker servery pro e-maily, exporty a synchronizace.: zpracování objednávek, e-mailů nebo exportů mimo frontend. Frontend zůstane rychlý.

Další tipy z praxe

  • Automatické škálování v cloudu: např. AWS Auto Scaling nebo Kubernetes cluster – ideální pro kampaně s nepředvídatelným nárůstem návštěvnosti.
  • Připravené snapshots/server images: pokud hosting cloud podporuje, mějte připravený snapshot serveru a naklikejte další během minut.
  • Optimalizace obrázků: WebP/AVIF formáty + lazy loading → méně dat prohlížeči, rychlejší web.
  • Asynchronní úlohy: emaily, exporty, synchronizace s ERP → vždy přes frontu (např. s Redis a WP-CLI).
  • Plánování kampaně: nasadit zvýšený výkon 24 – 48 hodin před akcí, ne až v den kampaně.

Testování před kampaní

Spousta e-shopů začne řešit výkon až ve chvíli, kdy už běží kampaň. Jenže to je pozdě. Testování musí proběhnout dřív, než pustíte reklamu ven. Cílem je zjistit, kolik uživatelů váš WooCommerce zvládne, kde jsou limity a jak se chová objednávkový proces pod zátěží.

Jak testovat

  • Load testing – pomocí nástrojů jako k6 nebo Loader.io dokážete simulovat stovky až tisíce uživatelů, kteří přistupují na váš web najednou. Výsledky vám ukážou, kdy se začínají zvedat odezvy a kde server nestíhá.
  • Simulace objednávek – u WooCommerce není kritické jen načítání produktů, ale hlavně checkout a platby. Otestujte, jak se chová košík při stovkách paralelních objednávek.
  • Test databáze – sledujte slow query log a zatížení MySQL/MariaDB během testu. Zjistíte, jestli pluginy nebo špatně navržené dotazy brzdí výkon.
  • Test front a e-mailů – pokud objednávky spouští e-maily, exporty nebo synchronizaci s ERP, musí běžet přes frontu. Jinak vám pod zátěží spadne checkout.

Monitoring a alerty

Bez monitoringu je provoz e-shopu vždy risk. Ve špičce potřebujete mít jasná data o tom, jak se chová server, databáze i samotné jádro e-shopu. Jen tak poznáte, že se začínají hromadit pomalé dotazy, fronty objednávek nebo selhávají platby. Díky tomu můžete zasáhnout dřív, než se problém projeví na straně zákazníků.

Co sledovat

  • Výkon aplikace: Rychlost načítání stránek, latence a chybovost (HTTP 500, 502).
  • Databázi: Slow queries, počet spojení, zamčené tabulky.
  • Fronty: WooCommerce používá cron pro e-maily, generování kuponů či exporty. Pokud cron zamrzne, neodejdou ani potvrzení objednávek.
  • Server: Vytížení CPU, RAM, diskových operací a sítě.
  • Platební brány: Stripe, GoPay, ComGate. Pokud selže spojení nebo API vrací chyby, přicházíte rovnou o tržby. Je dobré mít alerty i na výpadky poskytovatele platební brány, ne jen vlastního serveru.

Nástroje, které fungují v praxi

  • Query Monitor: Plugin přímo do WordPressu, který odhalí pomalé SQL dotazy, neefektivní hooky nebo PHP chyby. Skvělé pro ladění.
  • New Relic: Detailní monitoring výkonu PHP a databáze, ideální pro produkci, když chcete vědět, kde přesně WooCommerce brzdí.
  • Sentry: Chytá chyby a výjimky, pošle upozornění, když zákazník narazí na problém při objednávce.
  • Healthchecks.io: Kontroluje, zda běží WordPress cron (a tím pádem odcházejí e-maily a probíhají automatické úlohy).
  • Prometheus + Grafana nebo Datadog: Profesionální monitoring serveru i databáze s grafy a alerty.
  • Logtail nebo ELK stack: Centralizace logů (PHP error log, Nginx/Apache logy, WooCommerce logy plateb).

Praktické tipy

  • Nastavte alerty na kritické stavy: Latence stránek nad 2 s, RAM nad 90 %, příliš dlouhé SQL dotazy nebo selhání plateb.
  • Testujte alerty dopředu: Nic není horšího než zjistit, že e-mail s varováním o pádu serveru spadl do spamu.

Krizový plán pro WooCommerce kampaň

Během kampaní platí jednoduché pravidlo: co se může pokazit, to se jednou pokazí. Může spadnout server, přestat odpovídat databáze nebo selhat platební brána. Proto se vyplatí mít připravený krizový plán, který přesně určí, co dělat a kdo za co odpovídá.

Dobře nastavený plán obsahuje:

  • Zálohy a snapshoty: Aktuální zálohy databáze i souborů, ideálně i snapshot celé instance, abyste mohli během minut obnovit provoz.
  • Kontakty na klíčové lidi: Hosting, vývojář, administrátor. Všichni musí být k dispozici a vědět, že v době kampaně může přijít ostrá situace.
  • Fallback verze webu: Jednoduchý záložní web nebo landing page s možností objednávky jiným způsobem, aby obchod nezůstal úplně stát.
  • Odpovědnosti v týmu: Kdo restartuje server, kdo komunikuje s hostingem, kdo informuje zákazníky. Jasná pravidla ušetří drahocenný čas.
  • Scénáře pro platební brány: Pokud padne GoPay nebo Stripe, záložní brána připravená k aktivaci může zachránit stovky objednávek (například platba na dobírku nebo převodem).

I když e-shop připravíte sebelíp, může se stát, že během kampaně něco selže. V takové chvíli je nejdůležitější zachovat klid. Na redditu jsem kdysi četl trefný komentář: „Nobody ever fixed a production issue faster by panicking.“ A je to pravda. Když zůstanete v klidu, kouknete na logy a postupně ověříte, kde je problém, většinou zjistíte, že řešení je jednoduché. V panice se ale snadno vypne špatný server, smaže databáze nebo udělá změna, co celou situaci ještě zhorší.

Kdy zavolat odborníka

Některé úpravy zvládnete sami, odmazat zbytečné pluginy, nastavit caching nebo spustit základní testy. Pokud ale váš e-shop generuje statisíce až miliony měsíčně nebo se chystáte na velkou kampaň, vyplatí se mít po ruce zkušeného vývojáře. Investice do přípravy je vždy menší než ztráty z výpadku.

👉 Rád vám s tím pomůžu. Společně nastavíme WooCommerce tak, aby zvládl i ty největší špičky. Ozvěte se mi.

Závěr

Výpadky během kampaní je noční můra každého e-shopaře. Většinou není na vině samotný WooCommerce, ale špatně připravená infrastruktura a „slepený“ web z desítek pluginů. Pokud databáze nestíhá, server jede na hraně a cache není správně nastavená, stačí jeden nápor a e-shop se zhroutí.

Prevence je vždy levnější než hašení škod. Stačí se připravit předem: kvalitní hosting, správná optimalizace, monitoring a krizový plán. To vše rozhoduje o tom, jestli vaše kampaň vydělá maximum, nebo promění marketingový rozpočet v nulový výsledek.

Pokud chcete mít jistotu, že váš WooCommerce zvládne i ty největší špičky, ozvěte se mi. Společně projdeme váš e-shop, odhalíme slabiny a nastavíme řešení, které vás ochrání před výpadky.