Nginx mikro-keš i FastCGI cache: dubinska analiza TTFB i performansi
Nginx mikro-keš (FastCGI cache sa veoma kratkim TTL-om) predstavlja jedan od najefikasnijih načina za ubrzanje dinamičkog WordPress sajta bez narušavanja funkcionalnosti. Za razliku od klasičnog page cache plugina, FastCGI keš funkcioniše na nivou web servera i presreće PHP odgovor pre nego što se ponovo izvrši.
Rezultat je drastično smanjenje TTFB (Time To First Byte), niže CPU opterećenje i veća skalabilnost pri povećanom saobraćaju.
Šta je mikro-keš i kako funkcioniše?
Mikro-keš je FastCGI keš sa kratkim vremenom zadržavanja (npr. 1–10 sekundi). Cilj nije dugoročno čuvanje sadržaja, već apsorpcija burst saobraćaja i eliminacija ponovnog izvršavanja identičnih PHP zahteva u kratkom vremenskom intervalu.
Tipičan tok zahteva bez keša:
- Nginx prima zahtev
- Prosleđuje ga PHP-FPM-u
- PHP izvršava WordPress
- MySQL/MariaDB izvršava upite
- HTML odgovor se vraća korisniku
Sa FastCGI mikro-kešom:
- Prvi zahtev generiše PHP odgovor
- Nginx ga smešta u keš
- Sledeći zahtevi dobijaju odgovor direktno iz keša
- PHP i baza se uopšte ne izvršavaju
Primer FastCGI mikro-keš konfiguracije
fastcgi_cache_path /var/cache/nginx levels=1:2 keys_zone=WORDPRESS:100m inactive=60m;
fastcgi_cache_key "$scheme$request_method$host$request_uri|device=$final_device_type";
server {
set $skip_cache 0;
if ($request_method = POST) {
set $skip_cache 1;
}
if ($query_string != "") {
set $skip_cache 1;
}
if ($http_cookie ~* "wordpress_logged_in|comment_author") {
set $skip_cache 1;
}
location ~ \.php$ {
fastcgi_cache WORDPRESS;
fastcgi_cache_valid 200 10s;
fastcgi_cache_use_stale updating error timeout invalid_header http_500;
fastcgi_cache_bypass $skip_cache;
fastcgi_no_cache $skip_cache;
add_header X-FastCGI-Cache $upstream_cache_status;
}
}
TTL od 10 sekundi je dovoljan da apsorbuje većinu ponovljenih zahteva, posebno kod naglih skokova poseta (npr. kada članak postane viralan).
MOŽDA VAM SE SVIĐA
Device-aware cache ključ

Ukoliko se koristi odvojena mobilna i desktop verzija sajta, keš ključ mora sadržati parametar uređaja:
fastcgi_cache_key "$scheme$request_method$host$request_uri|device=$final_device_type";
Time se sprečava situacija da mobilna verzija bude servirana desktop korisnicima i obrnuto.
TTFB analiza: bez keša vs mikro-keš
| Scenario | Bez FastCGI keša | Sa mikro-kešom |
|---|---|---|
| TTFB | Zavisi od PHP i baze | Stabilan i nizak |
| CPU opterećenje | Visoko pri većem saobraćaju | Znatno niže |
| Broj PHP izvršavanja | Svaki zahtev | Samo prvi zahtev u TTL periodu |
| Skalabilnost | Ograničena | Visoka |
Mikro-keš posebno dolazi do izražaja kod:
- news portala
- visokog concurrency-a
- saobraćajnih spike-ova
- API endpoint-a koji vraćaju identične odgovore
FastCGI cache i Redis: komplementarni slojevi
Mikro-keš i Redis object cache nisu konkurenti — oni funkcionišu na različitim nivoima:
- FastCGI keš kešira kompletan HTML odgovor
- Redis kešira WordPress objekte i query rezultate
Kada FastCGI keš pogodi (cache hit), Redis se uopšte ne aktivira jer PHP nije izvršen. Kada FastCGI keš istekne, Redis ubrzava generisanje novog odgovora.
Bezbednosni i kontrolni aspekti
Ispravna mikro-keš konfiguracija mora:
MOŽDA VAM SE SVIĐA
- izuzeti logovane korisnike
- izuzeti POST zahteve
- izuzeti dinamičke parametre
- podržati stale-while-updating logiku
Direktiva:
fastcgi_cache_use_stale updating;
omogućava da korisnici dobiju prethodnu verziju sadržaja dok se nova generiše, čime se sprečava tzv. cache stampede problem.
Nginx mikro-keš i FastCGI cache – SEO i Core Web Vitals efekti

Niži TTFB direktno utiče na:
- brže inicijalno renderovanje
- stabilniji Largest Contentful Paint (LCP)
- bolje korisničko iskustvo jer se stranica prikazuje bez kašnjenja
Google ne indeksira server konfiguraciju, ali meri rezultat — brzinu i stabilnost. Svoj sajt možete testirati na pagespeed insights.
Test Metodologija i Benchmark Rezultati
Da bi analiza FastCGI mikro-keša bila kredibilna i merljiva, sprovedeno je poređenje performansi na produkcionom stack-u zasnovanom na:
- OS: Debian 12
- Web server: Nginx
- PHP: PHP-FPM
- Object cache: Redis (UNIX socket)
- Kontrolni panel: myVesta Control Panel
- WordPress + LiteSpeed Cache plugin (bez server-side LS)
Test okruženje je rađeno na realnom portalu sa aktivnim temama i dinamičkim sadržajem preko 1500 postiva i teškom multi purpose temom.
🧪 Test alati
Korišćeni alati:
wrk(high concurrency test)ab(ApacheBench)curl -wza TTFB- Chrome DevTools (Network timing)
- Cloudflare analytics (edge comparison)
Benchmark 1: Bez mikro-keša

Test komanda:
wrk -t4 -c100 -d30s https://example.com/Rezultati:
| Parametar | Vrednost |
|---|---|
| Avg latency | 480ms |
| TTFB | 420ms |
| Requests/sec | 190 |
| CPU usage | 70–85% |
| PHP-FPM workers | pod opterećenjem |
Analiza:
Svaki zahtev prolazi kroz:
Nginx → PHP-FPM → WordPress bootstrap → Redis → MySQL
Čak i sa Redis object cache-om, PHP izvršavanje ostaje bottleneck.
Benchmark 2: Sa FastCGI mikro-kešom (5s)
Test komanda:
wrk -t4 -c100 -d30s https://example.com/| Parametar | Vrednost |
|---|---|
| Avg latency | 32ms |
| TTFB | 18ms |
| Requests/sec | 3100+ |
| CPU usage | 5–12% |
| PHP-FPM workers | minimalno korišćenje |
📊 Poređenje
| Parametar | Bez mikro-keša | Sa mikro-kešom |
|---|---|---|
| TTFB | ~420ms | ~18ms |
| Requests/sec | ~190 | ~3100 |
| CPU usage | 80% | 10% |
| PHP load | visok | minimalan |
| Skalabilnost | ograničena | ekstremno visoka |
Tehnička interpretacija
Mikro-keš funkcioniše kao:
User → Nginx (cache hit) → odgovorUmesto:
User → Nginx → PHP-FPM → WordPress → Redis → MySQL → odgovorTime se:
- Eliminiše PHP execution putanja
- Eliminiše WordPress bootstrap
- Eliminiše poziv bazi podataka
- Smanjuje context switching
- Dramatično smanjuje TTFB
Kada mikro-keš NIJE dovoljan?
Mikro-keš ne rešava:
- Personalizovani sadržaj
- Logged-in korisnike
- WooCommerce cart/session
- REST API dinamičke pozive
Zato se koristi zajedno sa:
- Redis object cache
- Cloudflare edge cache
- Pravilnim cache bypass pravilima
Zaključak
Nginx FastCGI mikro-keš predstavlja jedan od najefikasnijih slojeva optimizacije WordPress infrastrukture. Za razliku od plugina, radi na serverskom nivou, smanjuje potrebu za PHP izvršavanjem i omogućava visoku skalabilnost.
U kombinaciji sa Redis objektim kešom i pravilno podešenim PHP-FPM-om, mikro-keš formira snažan performansni temelj moderne WordPress arhitekture.





