Serverovny.cz/Fórum/Co by mělo být v konfiguraci Nginx pro zvýšení rychlosti?

Co by mělo být v konfiguraci Nginx pro zvýšení rychlosti?

Zajímalo by mě, co všechno bych měl udělat pro optimalizaci Nginx, aby mi web běžel rychleji. Jaké parametry nebo direktivy mám nastavit, aby se snížil čas načítání stránek? Slyšel jsem něco o gzip kompresi a cache, ale nejsem si jistý, jak to přesně nastavit. Můžete mi poradit, co všechno zahrnout do konfigurace Nginx pro zvýšení výkonu? Taky by mě zajímalo, jestli jsou nějaké tipy na optimalizaci obrázků nebo statických souborů přímo v rámci Nginx. Jaké další přístupy k optimalizaci zatížení serveru existují? Co třeba HTTP/2, má to smysl používat? Když už mluvím o tomhle, jak je to s parametry jako worker_processes a worker_connections? Mám je nastavovat podle počtu CPU nebo nějak jinak? Rád bych věděl i něco o SSL a jeho vlivu na rychlost. Jak mám nastavit SSL, abych neztrácel na rychlosti? Existují snad nějaké nástroje nebo příkazy pro testování výkonu po provedení změn v konfiguraci? Jak zjistím, jestli tyto změny opravdu fungují? Ve zkratce – co všechno zahrnout do Nginx konfigurace, aby byl výkon co nejlepší a web běžel jako vítr?

172 slov
1.7 minut čtení
2. 2. 2024
Žaneta Karásková

Pro zrychlení Nginx máš spoustu možností, tady je pár tipů, co určitě zkusit. Začni s gzip kompresí, to ti sníží velikost dat a urychlí načítání. Nastav v konfiguraci něco jako:

gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

Dál se zaměř na cache, třeba pomocí proxy_cache pro statické soubory. Můžeš nastavit expiraci headerů:

location ~* \.jpg$ \{
    expires 30d;
\}

HTTP/2 rozhodně doporučuji, je to rychlejší než HTTP/1.1, zvlášť pro víc požadavků najednou. U SSL si dej pozor, abys měl povolené HTTP/2 a nastav správné ciphers.

Co se týká worker_processes a worker_connections – ideálně nastav workers podle počtu CPU a connections podle toho, kolik uživatelů očekáváš. Takže třeba 1 worker na CPU a 1024 connections.

Optimalizace obrázků a statických souborů? Zkus použít nějaký nástroj na minifikaci CSS a JS, pak to hodíš do Nginx.

Na testování výkonu můžeš zkusit tools jako Apache Benchmark nebo Siege, abys viděl, jak to teď běží po změnách. Sleduj logy a případně použij nástroje jako Grafana nebo Prometheus pro monitoring.

Celkově se snaž minimalizovat dobu odezvy serveru a vyhýbej se zbytečným přesměrováním. Drž se těchto tipů a měl bys vidět zlepšení.

182 slov
1.8 minut čtení
19. 1. 2025
Martina Koubová

Optimalizace Nginx pro rychlost je celkem důležitá, tady je pár tipů, co udělat. Začni s gzip kompresí, to může hodně zrychlit načítání stránek. Přidej do konfigurace:

gzip on;
gzip_types text/plain application/xml application/javascript;

Pak se zaměř na cache. Můžeš nastavit caching pro statické soubory, aby se zbytečně nezatěžoval server:

location ~* \.jpg|\.jpeg|\.png|\.gif|\.css|\.js \{
    expires 30d;
\}

HTTP/2 rozhodně doporučuji, má to smysl a zrychlí to načítání. Stačí přidat "http2" do vaší serverové direktivy.

Pokud jde o worker_processes a worker_connections, ideálně je nastav podle CPU jádra. Např. pokud máš 4 jádra, tak dej 4 worker_processes a connections podle toho, kolik požadavků chceš zvládnout. Třeba 1024 nebo víc.

SSL může zpomalovat, tak se ujisti, že používáš novější verze protokolů, třeba TLS 1.2 nebo 1.3. Můžeš zkusit něco jako:

ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;

Na testování výkonu po změnách můžeš použít nástroje jako ab (Apache Benchmark) nebo siege. Sleduj čas odpovědi a propustnost.

Obrázky optimalizuj dřív než je nasadíš na server, použij nástroje pro kompresi před uploadem. Taky nezapomeň na HTTP cache headers, to dost pomůže.

Takže shrnutí: gzip, caching, HTTP/2, optimalizace obrázků a správné nastavení workerů – to vše by mělo pomoc.

179 slov
1.8 minut čtení
19. 1. 2025
Pavel Adamec
Serverovny.cz/Články/Systémové administrace
Optimalizace serverového výkonu pomocí správných konfiguracíJak správné nastavení serverových parametrů může zlepšit výkon a stabilitu vašeho systému.
1000 slov
10 minut čtení
2. 1. 2023
Adam Veselý
Přečíst článek
Podobné otázky