Hem lab hem alan (field) verisiyle ölçün — farklı soruları yanıtlarlar. Lighthouse lab'dır (sentetik, tekrarlanabilir, debug için); RUM alan'dır (gerçek kullanıcılar, gerçek için). Yalnızca birine güvenirseniz, yanlış şeyi optimize edersiniz.
Hem lab hem alan (field) verisiyle ölçün — farklı soruları yanıtlarlar. Lighthouse lab'dır (sentetik, tekrarlanabilir, debug için); RUM alan'dır (gerçek kullanıcılar, gerçek için). Yalnızca birine güvenirseniz, yanlış şeyi optimize edersiniz.
| Lab (Lighthouse) | Alan / RUM |
|---|
| Kaynak | Tek sentetik çalıştırma, sabit cihaz/ağ | Gerçek ziyaretler, tüm cihazlar/ağlar |
| İyi olduğu | Debug, CI regresyon kapıları, tekrarlanabilir | Kullanıcıların gerçekten deneyimlediği |
| INP | Ölçemez (gerçek etkileşim yok) | Tüm ziyaret boyunca ölçülür |
| Zayıflık | Gerçek trafiğinizi yansıtmaz | Gürültülü, hacim gerektirir, debug'ı zor |
Lighthouse, temiz bir makinede tek bir kısıtlanmış (throttled) yükleme çalıştırır — bir sorunu tekrar üretmek için harika, p75'inizi bilmek için işe yaramaz. Özellikle INP yalnızca alanda yakalanabilir, çünkü bir oturum boyunca gerçek etkileşimler gerektirir.
import { onLCP, onCLS, onINP } from "web-vitals";
function send(metric) {
// Attribution build'i, ona HANGİ öğe/etkileşimin neden olduğunu söyler
navigator.sendBeacon("/rum", JSON.stringify({
name: metric.name, value: metric.value, id: metric.id,
}));
}
onLCP(send); onCLS(send); onINP(send); // her metriği kesinleştikçe raporla
Bu, Arama sıralamasını besleyen Google'ın CrUX'i (Chrome User Experience Report) ile aynı metodolojidir — CrUX gerçek-kullanıcı p75'idir, lab değil.
Senior sinyali, lab ≠ alan olduğunu, sıralamanın alan p75'ini kullandığını ve INP'nin yalnızca alanda gerçek olduğunu bilmektir. Bir Lighthouse puanını optimize ederken gerçek p75'in zayıf kalması, bu sorunun ortaya çıkarmak için tasarlandığı klasik bir tuzaktır.
Junior'dan Senior'a detaylı cevaplarla bir BT mülakat soruları kütüphanesi.
Bağış Yap