TTFB nima va server javob vaqtini qanday qisqartirish mumkin
Amaliyot3 daqInnovialabs tahririyati
Qisqacha
TTFB — so‘rovdan javobning birinchi baytigacha bo‘lgan vaqt; u qolgan hamma narsani, jumladan LCP’ni kechiktiradi va skanerlashni sekinlashtiradi. Uni keshlash, CDN, statik generatsiya, bazaga so‘rovlarni optimallashtirish va foydalanuvchilarga yaqin hosting bilan qisqartiriladi.
TTFB nima
TTFB (Time to First Byte) — so‘rov boshlanganidan javobning birinchi bayti kelguncha o‘tgan vaqt. Unga quyidagilar kiradi:
- redirektlar, agar bo‘lsa;
- DNS so‘rovi, TCP ulanish va TLS qo‘l siqishuvi;
- serverda so‘rovni qayta ishlash: kod, bazaga so‘rovlar, HTML render;
- birinchi baytning brauzerga qaytish yo‘li.
HTML kelmaguncha brauzer CSS, shriftlar va rasmlarni yuklashni boshlay olmaydi. Shuning uchun TTFB — sahifa tezligining poydevori. web.dev tavsiyasi: tashriflarning ko‘pchiligi uchun TTFB 0,8 soniyadan oshmasligi kerak.
TTFB LCP va skanerlashga qanday ta’sir qiladi
- LCP (eng katta elementning chizilishi) HTML kelishidan oldin sodir bo‘la olmaydi. Server sekin javob bersa, rasmlarni qanchalik optimallashtirmang, yaxshi LCP olish juda qiyin.
- Skanerlash. Qidiruv roboti saytga yukni cheklaydi. Server sekin javob berganda robot kamroq sahifani aylanib chiqadi. Katta saytlarda bu yangi sahifalar indeksga kechroq tushishini anglatadi.
TTFB’ni turli hududlardan qanday o‘lchash mumkin
TTFB serverga bo‘lgan masofaga kuchli bog‘liq, shuning uchun ofisdan bitta tekshiruv yetarli emas.
| Vosita | Nimani ko‘rsatadi |
|---|---|
| Chrome DevTools → Network → Timing | Aniq so‘rov uchun «Waiting for server response» qatori |
| PageSpeed Insights | Trafik yetarli bo‘lsa, Chrome’ning haqiqiy foydalanuvchilari ma’lumotlari |
| WebPageTest | Tanlangan shahar va brauzerdan test, bosqichlar bo‘yicha |
| Search Console → Skanerlash statistikasi | Googlebot uchun o‘rtacha server javob vaqti |
| curl | Terminal bor istalgan joydan tezkor tekshiruv |
curl -o /dev/null -s -w "dns %{time_namelookup} tls %{time_appconnect} ttfb %{time_starttransfer}\n" https://example.com/
Foydalanuvchilaringiz qayerda bo‘lsa, o‘sha yerdan tekshiring: Toshkent, Olmaota, Moskva — va server yoki auditoriyaning bir qismi Yevropa yoki AQShda bo‘lsa, alohida u yerdan ham. Sovuq (kesh bo‘sh) va iliq so‘rovni solishtiring.
Server javob vaqtini qanday qisqartirish mumkin
1. Keshlash
- Serverda yoki teskari proksida (Nginx, Varnish) butun sahifani keshlash — hamma uchun bir xil sahifalarda eng kuchli usul.
- Og‘ir hisob-kitoblar va tez-tez takrorlanadigan so‘rovlar uchun obyekt keshi (Redis, Memcached).
- CDN keshni berib, uni fonda yangilashi uchun
s-maxagevastale-while-revalidatebilanCache-Controlsarlavhalari.
2. CDN
CDN javobni foydalanuvchiga eng yaqin tugundan beradi. Faqat statikani emas, imkon qadar HTMLni ham keshlash muhim. Tanlangan CDN’ning auditoriyangizga yaqin nuqtalari borligini tekshiring.
3. Ma’lumotlar bazasini optimallashtirish
- Sekin so‘rovlar logini yoqing va bajarilish rejasini (
EXPLAIN) ko‘ring. - Tez-tez ishlatiladigan
WHEREvaJOINshartlari uchun indekslar qo‘shing. - Ro‘yxatning har bir elementi uchun alohida so‘rov yuboriladigan N+1 muammosini bartaraf eting.
- Har so‘rovda yangi ulanish ochmaslik uchun ulanishlar pulidan foydalaning.
4. Statik generatsiya
Kam o‘zgaradigan sahifalarni (blog, xizmatlar, mahsulot kartochkalari) oldindan generatsiya qilgan foydaliroq — SSG yoki inkremental regeneratsiya. Shunda server har so‘rovda render qilish o‘rniga tayyor HTML beradi.
5. Foydalanuvchilarga yaqin hosting
Jismoniy masofa ulanishning har bir bosqichiga kechikish qo‘shadi. Auditoriya O‘zbekiston va MDHda bo‘lsa, Toshkentdagi yoki qo‘shni hududdagi server odatda Shimoliy Amerikadagidan tezroq javob beradi. Sayt shaxsiy ma’lumotlarni saqlasa, ularni mahalliylashtirish talablarini ham hisobga oling.
6. Kichik, lekin sezilarli narsalar
- Ortiqcha redirektlarni olib tashlang (http → https → www → slesh).
- HTTP/2 yoki HTTP/3 va zamonaviy TLS’ni yoqing.
- Render paytida tashqi API’larga bloklovchi so‘rovlar yubormang.
Ko‘p uchraydigan xatolar
- Faqat serverga yaqin lokal kompyuterdan o‘lchash.
- Asosiy kechikish serverda bo‘lsa-da, rasmlarni optimallashtirish.
- CDN qo‘yib, HTML’ni keshlamaslik.
- Admin paneldagi har qanday o‘zgarishda butun keshni tozalash.