Jak zrychlit Drupal

Weby a e-shopy3 min čtení

Praktický postup, jak zrychlit web na Drupalu 10 a 11: od hostingu přes mezipaměť a obrázky až po hledání pomalých modulů.

Drupal je při správném nastavení velmi rychlý. Menší weby většinou není třeba nijak speciálně ladit. Problémy přicházejí u větších projektů, kde základní konfigurace nestačí, nebo u webů, kde se někde po cestě něco vypnulo. Tady je postup, který používáme.

1. Hosting a PHP

Základem je kvalitní hosting s aktuální verzí PHP, zapnutým OPcache a dostatkem paměti. Rozdíl mezi starou a aktuální verzí PHP bývá na rychlosti znatelný.

2. Mezipaměť v jádru

Drupal 10 a 11 mají v jádru tři důležité moduly: Internal Page Cache pro anonymní návštěvníky, Dynamic Page Cache pro přihlášené a BigPipe, který pošle hlavní část stránky okamžitě a pomalejší části doplní. Všechny by měly být zapnuté.

V administraci v části Konfigurace → Vývoj → Výkon nastavte maximální stáří cache pro prohlížeče a proxy a zapněte agregaci CSS a JavaScriptu.

TipPokud jste během vývoje zapnuli vývojářská nastavení (vypnutá cache, Twig debug), před spuštěním je vypněte. Je to jedna z nejčastějších příčin pomalých webů.

3. Obrázky

  • Používejte styly obrázků a responzivní obrázky, ne originály.
  • Konvertujte do WebP nebo AVIF, Drupal to umí přímo ve stylech.
  • Obrázky mimo první obrazovku načítejte až při posunutí (lazy loading je v jádru).

4. Views a vlastní bloky

U Views nastavte cache podle značek (tag-based), pokud to obsah dovolí. U vlastních bloků a modulů správně nastavte cache tags, contexts a max-age. Jedno nesprávně nastavené max-age: 0 umí vypnout cache celé stránky.

5. Redis nebo Memcache

U větších webů se vyplatí přesunout cache z databáze do Redisu nebo Memcache. Potřebujete k tomu podporu hostingu a příslušný modul.

6. Reverse proxy a CDN

Při velké návštěvnosti pomůže Varnish nebo CDN, které doručí stránky a soubory z paměti, aniž by se zatížil Drupal.

7. Skripty třetích stran

Často web nezpomaluje Drupal, ale měřicí kódy, chaty a widgety. Načítejte je přes Google Tag Manager, až po souhlasu a jen ty, které opravdu používáte.

Pořád pomalé?

Je třeba měřit. Pomůže PageSpeed Insights pro pohled návštěvníka a nástroje jako Webprofiler nebo profilování na serveru pro pohled dovnitř. Často je viníkem jeden modul nebo jeden špatně napsaný dotaz do databáze. Vývojářské moduly po ladění na produkci vypněte.

Rychlost není jednorázový úkol. Každý nový modul a každý nový skript ji může zhoršit, proto se ji vyplatí pravidelně kontrolovat.

Další články

Všechny články

Máte nápad, nebo vás něco trápí? Řekneme vám, jak bychom to řešili.

Nejrychlejší je zavolat. Pokud vám víc vyhovuje psát, vyplňte formulář. Ozveme se do 1 pracovního dne. Cenu a termín znáte do 1 až 2 dnů po rozhovoru. Nic nepodepisujete.

Tomáš+421 911 123 397 Nikoleta+421 902 857 159 Po – Pá, 8:00 – 18:00

Nezávazná nabídka

Stačí pár vět. Zbytek doladíme při rozhovoru.

Údaje použijeme jen k odpovědi na vaši poptávku. Ochrana osobních údajů

Ozveme se do 1 pracovního dne