lb cache
lb cache komutu, arka uçtan gelen yanıtların TR7 üzerinde tutulmasını yöneten önbellek profillerini oluşturur. Profil bir vService'e bağlandığında, kurallara uyan yanıtlar saklanır ve sonraki isteklere arka uca gidilmeden verilir. Panel karşılığı Cache ekranıdır.
Komut Özeti
Yazım Sırası
lb cache add web-onbellek--timeout.val 30 --timeout.unit m --sizeMB 20--cacheRules.0.id …lb service update id <vService> --cache <profil> — yalnız HTTP türündeki vService'lerde Zorunlu Alanlar
| Sıra | Alan | Durum | Değer |
|---|---|---|---|
| 1 | name | Zorunlu | Profilin adı; koleksiyonda benzersiz olmalı |
Profilin geri kalanı isteğe bağlıdır: hiçbir alan verilmezse profil varsayılanlarla oluşur.
Süre, Boyut ve Başlık
| Alan | Ne yapar | Arkasına ne yazılır |
|---|---|---|
--timeout.val · --timeout.unit | Bir yanıtın önbellekte ne kadar kalacağını belirler | Sayı ve birim: s saniye · m dakika · h saat. Varsayılan 1 saat, en kısa 10 saniye |
--sizeMB | Önbelleğe alınacak en büyük nesnenin boyutunu sınırlar | 0 ile 2048 arasında tam sayı (MB). Daha büyük yanıtlar önbelleğe alınmaz |
--cacheHeaderName | Önbellekten verilen yanıta eklenen başlığın adını belirler | Başlık adı; varsayılan TRCACHE. İstemci bu başlığa bakarak yanıtın önbellekten geldiğini anlar |
Önbellekleme Kuralları
Kurallar hangi isteklerin önbelleğe alınacağını belirler. Her kural kendi indeksiyle yazılır ve kendi kimliğini taşır.
| Alan | Durum | Ne yapar | Arkasına ne yazılır |
|---|---|---|---|
--cacheRules.N.id | Zorunlu | Kurala kimlik verir | Kural kimliği; profil içinde benzersiz olmalı. Bir kural eklendiğinde bu alan verilmelidir |
--cacheRules.N.cond | İsteğe bağlı | Kuralın hangi isteklere uygulanacağını belirler | Koşul ifadesi; lb condition kayıtlarından kurulur. Koşul verilmezse kural her isteğe uyar |
--cacheRules.N.etag | İsteğe bağlı | Yanıta ETag başlığı eklenmesini açar; istemci sürüm değişmediğinde içeriği yeniden indirmez | true · false (varsayılan false) |
Eşleştirme Ölçütünü Gevşeten Alanlar
Önbellek, bir isteğin daha önce saklanmış yanıtla aynı olup olmadığına bakarken varsayılan olarak host başlığını, sorgu dizesini, istek ve yanıt başlıklarını hesaba katar. Aşağıdaki alanlar bu ölçütleri tek tek devre dışı bırakır: açıldıklarında farklı istekler aynı yanıtı paylaşır, önbellek isabet oranı artar.
| Alan | Varsayılan | Ne yapar |
|---|---|---|
--ignoreHost | false | Host başlığını yok sayar; farklı alan adlarından gelen istekler aynı yanıtı paylaşır |
--ignoreQuery | false | Sorgu dizesini yok sayar; ? sonrası değişse de aynı yanıt verilir |
--ignoreRequestCheck | false | İstek başlıklarını yok sayar |
--ignoreResponseCheck | false | Yanıt başlıklarını yok sayar; arka ucun önbelleklemeyi engelleyen başlıkları dikkate alınmaz |
--allowCacheAllMethods | false | HTTP yöntem standartlarını yok sayar; normalde önbelleğe alınmayan yöntemler de saklanır |
Gevşetme, yanlış yanıt döndürebilir
Bu alanlar önbelleğin ayırt etme ölçütünü daraltır. Örneğin --ignoreQuery true yazıldığında ?id=1 ile ?id=2 isteklerine aynı yanıt verilir. Yalnız içeriğin gerçekten değişmediği yerlerde açılır.
Dinamik Önbellekleme
| Alan | Durum | Ne yapar | Arkasına ne yazılır |
|---|---|---|---|
--dynamicCaching | İsteğe bağlı | Önbellek anahtarının istek içeriğinden üretilmesini açar | true · false (varsayılan false) |
--dynamicCachingKeys.N | Koşullu zorunlu | Anahtarı oluşturan değişkenleri belirler | Akıllı değişken; Tab kullanılabilecekleri listeler. --dynamicCaching true yazıldığında en az bir tane gerekir, her biri kendi indeksiyle ve birbirinden farklı yazılır |
Dinamik önbellekleme açıldığında yanıtlar tek bir kopya olarak değil, seçilen değişkenlerin değerine göre ayrı ayrı saklanır. Böylece kullanıcıya ya da isteğe göre değişen içerik de önbelleğe alınabilir.
Örnekler
Güncelleme ve Silme
Bilinmesi Gerekenler
- Profil tek başına çalışmaz. Önbellekleme, profil bir vService'e
--cachealanıyla bağlandığında başlar. Bu alan yalnız HTTP türündeki vService'lerde bulunur. - Kural kimliği zorunludur. Bir kural eklenirken
--cacheRules.N.idverilmelidir; kimlikler profil içinde benzersizdir. - En kısa süre 10 saniyedir.
--timeoutalanına daha kısa bir değer yazılamaz; birim olarak yalnızs,mvehkullanılır. - Boyut sınırı yanıt başınadır.
--sizeMBdeğerinden büyük yanıtlar önbelleğe hiç alınmaz; sınır 2048 MB'ı aşamaz. - Ad benzersizdir. Aynı ada sahip ikinci bir profil oluşturulamaz.
