Bir yanıtın cache'ten geldiğini nasıl anlarım (Cached(HIT) Header Name, varsayılan değeri TRCACHE)?
Kısa cevap
Cache profilindeki Cached(HIT) Header Name alanında belirlenen başlık (varsayılan TRCACHE), Cache profili atanmış vService'in yanıtlarına eklenir: Kurum Servisine gitmeden sunulan yanıtta değeri HIT, Kurum Servisinden gelen yanıtta MISS olur. Başlık curl ya da tarayıcının geliştirici araçlarıyla görülür; toplu durum vService panosundaki Frontend Cache ve Frontend Cache Hit Ratio grafiklerinden izlenir.
Sorun: Önbelleğin Çalışıp Çalışmadığı Görünmüyor
Cache profili atandıktan sonra hangi yanıtların önbellekten geldiği, önbelleğin ne kadar isabet sağladığı ve beklenen dosyaların gerçekten önbelleğe alınıp alınmadığı görülmek istenir.
Çözüm: İki Yöntem
| Durumunuz | Uygun yöntem |
|---|---|
| Tek bir isteği kontrol etmek | Yöntem 1: Yanıt başlığı |
| Toplu isabet oranını izlemek | Yöntem 2: Pano grafikleri |
Yöntem 1: Yanıt Başlığı Önerilen
- Nasıl çalışır Aynı adres iki kez istenir; ilk yanıt Kurum Servisinden gelir ve önbelleğe yazılır, ikincisi önbellekten sunulur.
- Nerede açılır İstemci komut satırı ya da tarayıcı → Geliştirici araçları → Network
- Gereksinim Cache profili atanmış HTTP vService; istenen dosya Caching rules kapsamında olmalı
- vService tipi HTTP
Adım adım yapılandırma
curl -s -o /dev/null -D - https://www.example.com/logo.png-I HEAD isteği gönderdiği için GET kullanan bu biçim tercih edilir. Yanıtta TRCACHE: MISS görülür.
Komut ikinci kez çalıştırılır. Tarayıcıda aynı kontrol, sayfa yenilendikten sonra Network sekmesinde istek seçilip yanıt başlıklarına bakılarak yapılır.
Doğrulama
İkinci isteğin yanıt başlıklarına bakılır. Başlık hiç yoksa vService'te Cache profili etkin değildir ya da (tarayıcıda) yanıt TR7'ye ulaşmadan tarayıcının kendi önbelleğinden gelmiştir.
TRCACHE: HITYöntem 2: Pano Grafikleri
- Nasıl çalışır Önbellek aramaları, isabetler ve isabet oranı zamana göre izlenir.
- Nerede açılırLeft Monitor Panel → Load Balancer vServices → vService → Dashboard → HTTP Frontend
- Gereksinim Cache profili atanmış HTTP vService
- vService tipi HTTP
Adım adım yapılandırma
Left Monitor Panel → Load Balancer vServices listesinde vService'e tıklanır; ekran vService'in Dashboard sekmesiyle açılır (Dashboard'a erişim).
HTTP Frontend sekmesinde Frontend Cache (Cache Lookups / Cache Hits) ve Frontend Cache Hit Ratio grafiklerine bakılır. Anlık değerler Live Stats → Frontend bölümündeki önbellek kartında da görülür.
Doğrulama
Cache Lookups ile Cache Hits karşılaştırılır. Lookups artıp Hits artmıyorsa istekler kurala uyuyor ama yanıtlar saklanmıyordur.
Cache Hits artar · Hit Ratio sıfırdan büyükTR7'de Başlığın Ayrıntıları
- Başlık adı: Load Balancer → Profiles → Cache → profil satırına sağ tık → Edit → Cached(HIT) Header Name alanında değiştirilir (ör.
X-Cache). Kayıt açık bağlantılar kopmadan uygulanır. - Önbellek yanıtlarına işlem: Yalnızca önbellekten sunulan yanıtlara aksiyon uygulamak için hazır If the response comes from cache koşulu, tersi için If the response DOES NOT come from cache koşulu kullanılır (Cache başarımının izlenmesi).
Sık Yapılan Hatalar
- MISS'in yanıtın önbelleğe yazıldığını gösterdiğini sanmak. MISS yalnızca yanıtın Kurum Servisinden geldiğini gösterir; POST yanıtları da MISS alır. Önbelleğe yazılıp yazılmadığı sonraki istekte HIT görülünce anlaşılır.
- Başlık adını değiştirip eski adı aramak. Başlık adı Cache profilinde değiştirilmişse yanıtta yeni adla görünür.
- Hep MISS görünce kuralı kontrol etmemek. Dosya türü varsayılan kurala girmiyor olabilir (ör.
.js): Hangi içerikler cache'lenir; cache kurallarını nasıl belirlerim?
Dokümantasyonda nasıl yapılır
